pub struct Parser { /* private fields */ }Implementations§
Source§impl Parser
impl Parser
pub fn check_unary_confusables(&mut self) -> Option<AstExprUnaryOp>
Source§impl Parser
impl Parser
pub fn copy_temp_vector_t<'a, T: Clone>( &mut self, data: &TempVector<'a, T>, ) -> AstArray<T>
Source§impl Parser
impl Parser
pub fn copy_initializer_list_t<T: Clone>(&mut self, data: &[T]) -> AstArray<T>
Source§impl Parser
impl Parser
pub fn expect_and_consume_char(&mut self, value: char, context: &str) -> bool
Source§impl Parser
impl Parser
pub fn expect_and_consume_type(&mut self, type_: Type, context: &str) -> bool
Source§impl Parser
impl Parser
pub fn expect_match_and_consume( &mut self, value: char, begin: &MatchLexeme, search_for_missing: bool, ) -> bool
Source§impl Parser
impl Parser
pub fn expect_match_and_consume_fail( &mut self, type_: Type, begin: &MatchLexeme, extra: Option<&str>, )
Source§impl Parser
impl Parser
pub fn extract_string_details(&mut self) -> (QuoteStyle, u32)
Source§impl Parser
impl Parser
pub fn next_lexeme(&mut self)
Source§impl Parser
impl Parser
pub fn parse( buffer: &str, buffer_size: usize, names: &mut AstNameTable, allocator: &mut Allocator, options: ParseOptions, ) -> ParseResult
Source§impl Parser
impl Parser
pub fn parse_attribute(&mut self, attributes: &mut TempVector<'_, *mut AstAttr>)
Source§impl Parser
impl Parser
pub fn parse_block(&mut self) -> *mut AstStatBlock
Source§impl Parser
impl Parser
pub fn parse_block_no_scope(&mut self) -> *mut AstStatBlock
Source§impl Parser
impl Parser
pub fn parse_call_list( &mut self, comma_positions: *mut TempVector<'_, Position>, ) -> (AstArray<*mut AstExpr>, Location, Location)
Source§impl Parser
impl Parser
pub fn parse_chunk(&mut self) -> *mut AstStatBlock
Source§impl Parser
impl Parser
pub fn parse_compound_assignment( &mut self, initial: *mut AstExpr, op: AstExprBinaryOp, ) -> *mut AstStat
Source§impl Parser
impl Parser
pub fn parse_declared_extern_type_method( &mut self, attributes: &AstArray<*mut AstAttr>, ) -> AstDeclaredExternTypeProperty
Source§impl Parser
impl Parser
pub fn parse_expr_list( &mut self, result: &mut TempVector<'_, *mut AstExpr>, comma_positions: Option<&mut TempVector<'_, Position>>, )
Source§impl Parser
impl Parser
pub fn parse_expr_c_char_usize_ast_name_table_allocator_parse_options( buffer: &str, buffer_size: usize, names: &mut AstNameTable, allocator: &mut Allocator, options: ParseOptions, ) -> ParseNodeResult<AstExpr>
Source§impl Parser
impl Parser
pub fn parse_function_stat( &mut self, attributes: &AstArray<*mut AstAttr>, ) -> *mut AstStatFunction
Source§impl Parser
impl Parser
pub fn parse_function_type( &mut self, allow_pack: bool, attributes: &AstArray<*mut AstAttr>, ) -> AstTypeOrPack
Source§impl Parser
impl Parser
pub fn parse_function_type_tail( &mut self, begin: &Lexeme, attributes: AstArray<*mut AstAttr>, generics: AstArray<*mut AstGenericType>, generic_packs: AstArray<*mut AstGenericTypePack>, params: AstArray<*mut AstType>, param_names: AstArray<Option<AstArgumentName>>, vararg_annotation: *mut AstTypePack, ) -> *mut AstType
Source§impl Parser
impl Parser
pub fn parse_generic_type_list( &mut self, with_default_values: bool, open_position: Option<&mut Position>, comma_positions: Option<&mut TempVector<'_, Position>>, close_position: Option<&mut Position>, ) -> (AstArray<*mut AstGenericType>, AstArray<*mut AstGenericTypePack>)
Source§impl Parser
impl Parser
pub fn parse_index_name(&mut self, context: &str, previous: &Position) -> Name
Source§impl Parser
impl Parser
pub fn parse_optional_return_type( &mut self, return_specifier_position: Option<&mut Position>, ) -> *mut AstTypePack
Source§impl Parser
impl Parser
pub fn parse_return_type(&mut self) -> *mut AstTypePack
Source§impl Parser
impl Parser
pub fn parse_simple_type( &mut self, allow_pack: bool, in_declaration_context: bool, ) -> AstTypeOrPack
Source§impl Parser
impl Parser
pub fn parse_simple_type_or_pack(&mut self) -> AstTypeOrPack
Source§impl Parser
impl Parser
pub fn parse_table_indexer( &mut self, access: AstTableAccess, access_location: Option<Location>, begin: Lexeme, ) -> TableIndexerResult
Source§impl Parser
impl Parser
pub fn parse_table_type(&mut self, in_declaration_context: bool) -> *mut AstType
Source§impl Parser
impl Parser
pub fn parse_type_instantiation_expr( &mut self, cst_node_out: *mut CstTypeInstantiation, end_location_out: Option<&mut Location>, ) -> AstArray<AstTypeOrPack>
Source§impl Parser
impl Parser
pub fn parse_type_list( &mut self, result: &mut TempVector<'_, *mut AstType>, result_names: &mut TempVector<'_, Option<AstArgumentName>>, comma_positions: *mut TempVector<'_, Position>, name_colon_positions: *mut TempVector<'_, Position>, ) -> *mut AstTypePack
Source§impl Parser
impl Parser
pub fn parse_type_pack(&mut self) -> *mut AstTypePack
Source§impl Parser
impl Parser
pub fn parse_type_params( &mut self, opening_position: Option<&mut Position>, comma_positions: Option<&mut TempVector<'_, Position>>, closing_position: Option<&mut Position>, ) -> AstArray<AstTypeOrPack>
Source§impl Parser
impl Parser
pub fn parse_type_c_char_usize_ast_name_table_allocator_parse_options( buffer: &str, names: &mut AstNameTable, allocator: *mut Allocator, options: ParseOptions, ) -> ParseNodeResult<AstType>
Source§impl Parser
impl Parser
pub fn parse_type_bool(&mut self, in_declaration_context: bool) -> *mut AstType
Source§impl Parser
impl Parser
pub fn parse_variadic_argument_type_pack(&mut self) -> *mut AstTypePack
Source§impl Parser
impl Parser
pub fn new( buffer: &str, names: &mut AstNameTable, allocator: *mut Allocator, options: ParseOptions, ) -> Self
Source§impl Parser
impl Parser
pub fn report_ambiguous_call_error(&mut self)
Source§impl Parser
impl Parser
pub fn report_expr_error( &mut self, location: Location, expressions: AstArray<*mut AstExpr>, format: Arguments<'_>, ) -> *mut AstExprError
Source§impl Parser
impl Parser
pub fn report_l_value_error(&mut self, expr: *mut AstExpr) -> *mut AstExprError
Source§impl Parser
impl Parser
pub fn report_missing_type_error( &mut self, parse_error_location: Location, ast_error_location: Location, format: Arguments<'_>, ) -> *mut AstTypeError
Source§impl Parser
impl Parser
pub fn report_location_c_char_item( &mut self, location: Location, format: Arguments<'_>, )
Source§impl Parser
impl Parser
pub fn report_type_error( &mut self, location: Location, types: AstArray<*mut AstType>, args: Arguments<'_>, ) -> *mut AstTypeError
Source§impl Parser
impl Parser
pub fn run_parse<Node, F>( buffer: &str, buffer_size: usize, names: &mut AstNameTable, allocator: &mut Allocator, options: ParseOptions, f: F, ) -> ParseNodeResult<Node>
Trait Implementations§
Auto Trait Implementations§
impl !Send for Parser
impl !Sync for Parser
impl Freeze for Parser
impl RefUnwindSafe for Parser
impl Unpin for Parser
impl UnsafeUnpin for Parser
impl UnwindSafe for Parser
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