Struct ast_grep_config::CombinedScan

source ·
pub struct CombinedScan<'r, L: Language> { /* private fields */ }
Expand description

A struct to group all rules according to their potential kinds. This can greatly reduce traversal times and skip unmatchable rules. Rules are referenced by their index in the rules vector.

Implementations§

source§

impl<'r, L: Language> CombinedScan<'r, L>

source

pub fn new(rules: Vec<&'r RuleConfig<L>>) -> Self

source

pub fn find<D>(&self, root: &AstGrep<D>) -> BitSet
where D: Doc<Lang = L>,

source

pub fn scan<'a, D>( &self, root: &'a AstGrep<D>, hit: BitSet, separate_fix: bool ) -> ScanResult<'a, D>
where D: Doc<Lang = L>,

source

pub fn get_rule(&self, idx: usize) -> &RuleConfig<L>

source

pub fn all_kinds(&self) -> BitSet

Auto Trait Implementations§

§

impl<'r, L> Freeze for CombinedScan<'r, L>

§

impl<'r, L> RefUnwindSafe for CombinedScan<'r, L>
where L: RefUnwindSafe,

§

impl<'r, L> Send for CombinedScan<'r, L>
where L: Sync + Send,

§

impl<'r, L> Sync for CombinedScan<'r, L>
where L: Sync + Send,

§

impl<'r, L> Unpin for CombinedScan<'r, L>

§

impl<'r, L> UnwindSafe for CombinedScan<'r, L>
where L: RefUnwindSafe,

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> 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, 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.