Struct ast_grep_config::SerializableRuleCore
source · pub struct SerializableRuleCore<L: Language> {
pub language: L,
pub rule: SerializableRule,
pub constraints: Option<HashMap<String, SerializableMetaVarMatcher>>,
pub utils: Option<HashMap<String, SerializableRule>>,
pub transform: Option<HashMap<String, Transformation>>,
}Fields§
§language: LSpecify the language to parse and the file extension to includ in matching.
rule: SerializableRulePattern rules to find matching AST nodes
constraints: Option<HashMap<String, SerializableMetaVarMatcher>>Addtional meta variables pattern to filter matching
utils: Option<HashMap<String, SerializableRule>>Utility rules that can be used in matches
transform: Option<HashMap<String, Transformation>>A dictionary for meatvariable manipulation. Dict key is the new variable name.
Dict value is a [transformation] that specifies how meta var is processed.
Warning: this is experimental option. [https://github.com/ast-grep/ast-grep/issues/436]
Implementations§
source§impl<L: Language> SerializableRuleCore<L>
impl<L: Language> SerializableRuleCore<L>
pub fn get_matcher( &self, globals: &GlobalRules<L> ) -> Result<RuleWithConstraint<L>, RuleConfigError>
Trait Implementations§
source§impl<L: Clone + Language> Clone for SerializableRuleCore<L>
impl<L: Clone + Language> Clone for SerializableRuleCore<L>
source§fn clone(&self) -> SerializableRuleCore<L>
fn clone(&self) -> SerializableRuleCore<L>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl<'de, L> Deserialize<'de> for SerializableRuleCore<L>where
L: Deserialize<'de> + Language,
impl<'de, L> Deserialize<'de> for SerializableRuleCore<L>where L: Deserialize<'de> + Language,
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl<L> RefUnwindSafe for SerializableRuleCore<L>where L: RefUnwindSafe,
impl<L> Send for SerializableRuleCore<L>where L: Send,
impl<L> Sync for SerializableRuleCore<L>where L: Sync,
impl<L> Unpin for SerializableRuleCore<L>where L: Unpin,
impl<L> UnwindSafe for SerializableRuleCore<L>where L: UnwindSafe,
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