pub struct RuleSet<L: Language> { /* private fields */ }Expand description
规则集合
Implementations§
Source§impl<L: Language> RuleSet<L>
impl<L: Language> RuleSet<L>
Sourcepub fn add_rule(&mut self, rule: Box<dyn FormatRule<L>>) -> FormatResult<()>
pub fn add_rule(&mut self, rule: Box<dyn FormatRule<L>>) -> FormatResult<()>
添加规则
Sourcepub fn add_rules(
&mut self,
rules: Vec<Box<dyn FormatRule<L>>>,
) -> FormatResult<()>
pub fn add_rules( &mut self, rules: Vec<Box<dyn FormatRule<L>>>, ) -> FormatResult<()>
批量添加规则
Sourcepub fn applicable_rules_for_node<'a>(
&'a self,
node: &'a RedNode<'_, L>,
) -> impl Iterator<Item = &'a dyn FormatRule<L>> + 'a
pub fn applicable_rules_for_node<'a>( &'a self, node: &'a RedNode<'_, L>, ) -> impl Iterator<Item = &'a dyn FormatRule<L>> + 'a
获取适用于节点的规则
Sourcepub fn applicable_rules_for_token<'a>(
&'a self,
token: &'a RedLeaf<L>,
) -> impl Iterator<Item = &'a dyn FormatRule<L>> + 'a
pub fn applicable_rules_for_token<'a>( &'a self, token: &'a RedLeaf<L>, ) -> impl Iterator<Item = &'a dyn FormatRule<L>> + 'a
获取适用于 Token 的规则
Sourcepub fn apply_node_rules<'a>(
&self,
node: &RedNode<'_, L>,
context: &FormatContext<L>,
source: &'a str,
format_children: &dyn Fn(&RedNode<'_, L>) -> FormatResult<Document<'a>>,
) -> FormatResult<Option<Document<'a>>>
pub fn apply_node_rules<'a>( &self, node: &RedNode<'_, L>, context: &FormatContext<L>, source: &'a str, format_children: &dyn Fn(&RedNode<'_, L>) -> FormatResult<Document<'a>>, ) -> FormatResult<Option<Document<'a>>>
应用所有适用的节点规则,返回第一个成功的 Document
Sourcepub fn apply_token_rules<'a>(
&self,
token: &RedLeaf<L>,
context: &FormatContext<L>,
source: &'a str,
) -> FormatResult<Option<Document<'a>>>
pub fn apply_token_rules<'a>( &self, token: &RedLeaf<L>, context: &FormatContext<L>, source: &'a str, ) -> FormatResult<Option<Document<'a>>>
应用所有适用的 Token 规则,返回第一个成功的 Document
Trait Implementations§
Auto Trait Implementations§
impl<L> Freeze for RuleSet<L>
impl<L> !RefUnwindSafe for RuleSet<L>
impl<L> !Send for RuleSet<L>
impl<L> !Sync for RuleSet<L>
impl<L> Unpin for RuleSet<L>
impl<L> !UnwindSafe for RuleSet<L>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more