Skip to main content

LanguageConfig

Struct LanguageConfig 

Source
pub struct LanguageConfig {
Show 13 fields pub id: &'static str, pub extensions: &'static [&'static str], pub entity_node_types: &'static [&'static str], pub container_node_types: &'static [&'static str], pub call_entity_identifiers: &'static [&'static str], pub extra_ident_chars: &'static [char], pub strip_strategy: StripStrategy, pub has_slash_qualified_refs: bool, pub extract_map_entries: bool, pub suppressed_nested_entities: &'static [SuppressedNestedEntity], pub scope_boundary_types: &'static [&'static str], pub get_language: fn() -> Option<Language>, pub scope_resolve: Option<&'static ScopeResolveConfig>,
}

Fields§

§id: &'static str§extensions: &'static [&'static str]§entity_node_types: &'static [&'static str]§container_node_types: &'static [&'static str]§call_entity_identifiers: &'static [&'static str]§extra_ident_chars: &'static [char]

Extra characters (beyond alphanumeric and _) that are valid identifier constituents for this language. Used by the tokenizer and reference scanner. E.g. Clojure uses ['-', '?', '!', '*', '='] for kebab-case, predicates, bang functions, dynamic vars, and equality operators.

§strip_strategy: StripStrategy

How to strip comments and string literals from content for this language.

§has_slash_qualified_refs: bool

Whether this language uses alias/name qualified references (e.g. Clojure). When true, resolve_entity_references runs a post-processing pass to resolve these qualified calls via the import table.

§extract_map_entries: bool

When true, a top-level map_lit node is broken into individual named entities, one per keyword key–value pair. Used for EDN data files (deps.edn, etc.) where the meaningful units are top-level map entries, not code definition forms.

§suppressed_nested_entities: &'static [SuppressedNestedEntity]§scope_boundary_types: &'static [&'static str]

Node types that introduce a new scope. The general (non-container) recursion in visit_node will not descend into these nodes, preventing local variables inside function bodies from being extracted as top-level entities.

§get_language: fn() -> Option<Language>§scope_resolve: Option<&'static ScopeResolveConfig>

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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
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.