RuleCore

Struct RuleCore 

Source
pub struct RuleCore {
    pub fixer: Vec<Fixer>,
    /* private fields */
}

Fields§

§fixer: Vec<Fixer>

Implementations§

Source§

impl RuleCore

Source

pub fn new(rule: Rule) -> Self

Source

pub fn with_matchers(self, constraints: HashMap<String, Rule>) -> Self

Source

pub fn with_registration(self, registration: RuleRegistration) -> Self

Source

pub fn with_transform(self, transform: Option<Transform>) -> Self

Source

pub fn with_fixer(self, fixer: Vec<Fixer>) -> Self

Source

pub fn get_env<L: Language>(&self, lang: L) -> DeserializeEnv<L>

Source

pub fn defined_vars(&self) -> HashSet<&str>

Methods from Deref<Target = Rule>§

Source

pub fn defined_vars(&self) -> HashSet<&str>

Source

pub fn verify_util(&self) -> Result<(), RuleSerializeError>

check if util rules used are defined

Trait Implementations§

Source§

impl Default for RuleCore

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Deref for RuleCore

Source§

type Target = Rule

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl Matcher for RuleCore

Source§

fn match_node_with_env<'tree, D: Doc>( &self, node: Node<'tree, D>, env: &mut Cow<'_, MetaVarEnv<'tree, D>>, ) -> Option<Node<'tree, D>>

Returns the node why the input is matched or None if not matched. The return value is usually input node itself, but it can be different node. For example Has matcher can return the child or descendant node.
Source§

fn potential_kinds(&self) -> Option<BitSet>

Returns a bitset for all possible target node kind ids. Returns None if the matcher needs to try against all node kind.
Source§

fn get_match_len<D>(&self, _node: Node<'_, D>) -> Option<usize>
where D: Doc,

get_match_len will skip trailing anonymous child node to exclude punctuation.

Auto Trait Implementations§

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> MatcherExt for T
where T: Matcher,

Source§

fn match_node<'tree, D>( &self, node: Node<'tree, D>, ) -> Option<NodeMatch<'tree, D>>
where D: Doc,

Source§

fn find_node<'tree, D>( &self, node: Node<'tree, D>, ) -> Option<NodeMatch<'tree, D>>
where D: Doc,

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

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

Source§

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

Source§

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.