Struct ast_grep_language::Dart
source · pub struct Dart;
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for Dart
impl<'de> Deserialize<'de> for Dart
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
source§impl From<Dart> for SupportLang
impl From<Dart> for SupportLang
source§impl Language for Dart
impl Language for Dart
source§fn get_ts_language(&self) -> TSLanguage
fn get_ts_language(&self) -> TSLanguage
tree sitter language to parse the source
source§fn from_path<P>(_path: P) -> Option<Self>
fn from_path<P>(_path: P) -> Option<Self>
Return the file language from path. Return None if the file type is not supported.
source§fn ast_grep<S>(&self, source: S) -> AstGrep<StrDoc<Self>>
fn ast_grep<S>(&self, source: S) -> AstGrep<StrDoc<Self>>
Create an
AstGrep
instance for the languagesource§fn skippable_kind_ids(&self) -> &'static [u16]
fn skippable_kind_ids(&self) -> &'static [u16]
ignore trivial tokens in language matching
source§fn pre_process_pattern<'q>(&self, query: &'q str) -> Cow<'q, str>
fn pre_process_pattern<'q>(&self, query: &'q str) -> Cow<'q, str>
normalize pattern code before matching
e.g. remove expression_statement, or prefer parsing {} to object over block
source§fn meta_var_char(&self) -> char
fn meta_var_char(&self) -> char
Configure meta variable special character
By default $ is the metavar char, but in PHP it can be #
source§fn expando_char(&self) -> char
fn expando_char(&self) -> char
Some language does not accept $ as the leading char for identifiers.
We need to change $ to other char at run-time to make parser happy, thus the name expando.
By default this is the same as meta_var char so replacement is done at runtime.
source§fn extract_meta_var(&self, source: &str) -> Option<MetaVariable>
fn extract_meta_var(&self, source: &str) -> Option<MetaVariable>
extract MetaVariable from a given source string
At runtime we need to use expand_char
fn injectable_languages(&self) -> Option<&'static [&'static str]>
source§fn extract_injections<D>(
&self,
_root: Node<'_, D>,
) -> HashMap<String, Vec<Range>>where
D: Doc,
fn extract_injections<D>(
&self,
_root: Node<'_, D>,
) -> HashMap<String, Vec<Range>>where
D: Doc,
get injected language regions in the root document. e.g. get JavaScripts in HTML
it will return a list of tuples of (language, regions).
The first item is the embedded region language, e.g. javascript
The second item is a list of regions in tree_sitter.
also see https://tree-sitter.github.io/tree-sitter/using-parsers#multi-language-documents
impl Copy for Dart
Auto Trait Implementations§
impl Freeze for Dart
impl RefUnwindSafe for Dart
impl Send for Dart
impl Sync for Dart
impl Unpin for Dart
impl UnwindSafe for Dart
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)