Struct sqruff_lib::core::rules::base::LintFix

source ·
pub struct LintFix {
    pub edit_type: EditType,
    pub anchor: Box<dyn Segment>,
    pub edit: Option<Vec<Box<dyn Segment>>>,
    pub source: Vec<Box<dyn Segment>>,
}
Expand description

A class to hold a potential fix to a linting violation.

Args:
    edit_type (:obj:`str`): One of `create_before`, `create_after`,
        `replace`, `delete` to indicate the kind of fix this represents.
    anchor (:obj:`BaseSegment`): A segment which represents
        the *position* that this fix should be applied at. For deletions
        it represents the segment to delete, for creations it implies

the position to create at (with the existing element at this position to be moved after the edit), for a replace it implies the segment to be replaced. edit (iterable of :obj:BaseSegment, optional): For replace and create fixes, this holds the iterable of segments to create or replace at the given anchor point. source (iterable of :obj:BaseSegment, optional): For replace and create fixes, this holds iterable of segments that provided code. IMPORTANT: The linter uses this to prevent copying material from templated areas.

Fields§

§edit_type: EditType§anchor: Box<dyn Segment>§edit: Option<Vec<Box<dyn Segment>>>§source: Vec<Box<dyn Segment>>

Implementations§

source§

impl LintFix

source

pub fn create_before( anchor: Box<dyn Segment>, edit_segments: Vec<Box<dyn Segment>> ) -> Self

source

pub fn create_after( anchor: Box<dyn Segment>, edit_segments: Vec<Box<dyn Segment>>, source: Option<Vec<Box<dyn Segment>>> ) -> Self

source

pub fn replace( anchor_segment: Box<dyn Segment>, edit_segments: Vec<Box<dyn Segment>>, source: Option<Vec<Box<dyn Segment>>> ) -> Self

source

pub fn delete(anchor_segment: Box<dyn Segment>) -> Self

source

pub fn is_just_source_edit(&self) -> bool

Return whether this a valid source only edit.

Trait Implementations§

source§

impl Clone for LintFix

source§

fn clone(&self) -> LintFix

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for LintFix

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for LintFix

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.

Auto Trait Implementations§

§

impl !RefUnwindSafe for LintFix

§

impl !Send for LintFix

§

impl !Sync for LintFix

§

impl Unpin for LintFix

§

impl !UnwindSafe for LintFix

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> Boxed for T

source§

fn boxed(self) -> Box<T>

source§

impl<T> Config for T

source§

fn config(self, f: impl FnOnce(&mut Self)) -> Self

source§

impl<T> DynClone for T
where T: Clone,

source§

fn __clone_box(&self, _: Private) -> *mut ()

source§

impl<T> DynEq for T
where T: Any + PartialEq,

source§

fn as_any(&self) -> &(dyn Any + 'static)

source§

fn dyn_eq(&self, other: &(dyn DynEq + 'static)) -> bool

source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.