Skip to main content

BuilderCache

Trait BuilderCache 

Source
pub trait BuilderCache<L: Language>: ParseCache<L> {
    // Required methods
    fn get_typed_node<T: 'static + Send + Sync + Clone>(
        &self,
        green: &GreenNode<'_, L>,
    ) -> Option<T>;
    fn set_typed_node<T: 'static + Send + Sync>(
        &mut self,
        green: &GreenNode<'_, L>,
        typed: T,
    );
}
Expand description

Cache trait for builder operations used by lexers and parsers.

This trait defines the interface for building green tree nodes incrementally. It provides methods for adding tokens and nodes to the tree structure.

Required Methods§

Source

fn get_typed_node<T: 'static + Send + Sync + Clone>( &self, green: &GreenNode<'_, L>, ) -> Option<T>

Gets a cached typed node for a given green node.

Source

fn set_typed_node<T: 'static + Send + Sync>( &mut self, green: &GreenNode<'_, L>, typed: T, )

Caches a typed node for a given green node.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<'a, L: Language, C: BuilderCache<L> + ?Sized> BuilderCache<L> for &'a mut C

Source§

fn get_typed_node<T: 'static + Send + Sync + Clone>( &self, green: &GreenNode<'_, L>, ) -> Option<T>

Source§

fn set_typed_node<T: 'static + Send + Sync>( &mut self, green: &GreenNode<'_, L>, typed: T, )

Implementors§