Trait ezno_parser::functions::FunctionBased
source · pub trait FunctionBased: Debug + Clone + PartialEq + Eq + Send + Sync {
type Header: Debug + Clone + PartialEq + Eq + Send + Sync;
type Name: Debug + Clone + PartialEq + Eq + Send + Sync;
type Body: ASTNode;
// Required methods
fn header_left(header: &Self::Header) -> Option<Cow<'_, Span>>;
fn header_and_name_from_reader(
reader: &mut impl TokenReader<TSXToken, Span>,
state: &mut ParsingState,
settings: &ParseOptions
) -> ParseResult<(Self::Header, Self::Name)>;
fn header_and_name_to_string_from_buffer<T: ToString>(
buf: &mut T,
header: &Self::Header,
name: &Self::Name,
settings: &ToStringOptions,
depth: u8
);
// Provided methods
fn get_parameter_body_boundary_token() -> Option<TSXToken> { ... }
fn parameters_from_reader<T: ToString>(
reader: &mut impl TokenReader<TSXToken, Span>,
state: &mut ParsingState,
settings: &ParseOptions
) -> ParseResult<FunctionParameters> { ... }
fn parameters_to_string_from_buffer<T: ToString>(
buf: &mut T,
parameters: &FunctionParameters,
settings: &ToStringOptions,
depth: u8
) { ... }
fn parameter_body_boundary_token_to_string_from_buffer<T: ToString>(
buf: &mut T,
settings: &ToStringOptions
) { ... }
}
Expand description
Specialization information for FunctionBase
Required Associated Types§
Required Methods§
fn header_left(header: &Self::Header) -> Option<Cow<'_, Span>>
fn header_and_name_from_reader( reader: &mut impl TokenReader<TSXToken, Span>, state: &mut ParsingState, settings: &ParseOptions ) -> ParseResult<(Self::Header, Self::Name)>
fn header_and_name_to_string_from_buffer<T: ToString>( buf: &mut T, header: &Self::Header, name: &Self::Name, settings: &ToStringOptions, depth: u8 )
Provided Methods§
sourcefn get_parameter_body_boundary_token() -> Option<TSXToken>
fn get_parameter_body_boundary_token() -> Option<TSXToken>
For [crate::ArrowFunction]
sourcefn parameters_from_reader<T: ToString>(
reader: &mut impl TokenReader<TSXToken, Span>,
state: &mut ParsingState,
settings: &ParseOptions
) -> ParseResult<FunctionParameters>
fn parameters_from_reader<T: ToString>( reader: &mut impl TokenReader<TSXToken, Span>, state: &mut ParsingState, settings: &ParseOptions ) -> ParseResult<FunctionParameters>
For [crate::ArrowFunction]
sourcefn parameters_to_string_from_buffer<T: ToString>(
buf: &mut T,
parameters: &FunctionParameters,
settings: &ToStringOptions,
depth: u8
)
fn parameters_to_string_from_buffer<T: ToString>( buf: &mut T, parameters: &FunctionParameters, settings: &ToStringOptions, depth: u8 )
For [crate::ArrowFunction]
sourcefn parameter_body_boundary_token_to_string_from_buffer<T: ToString>(
buf: &mut T,
settings: &ToStringOptions
)
fn parameter_body_boundary_token_to_string_from_buffer<T: ToString>( buf: &mut T, settings: &ToStringOptions )
For [crate::ArrowFunction]