Lines Matching refs:Token

5 use crate::lexer::{LexError, Lexer, LocatedError, LocatedToken, Token};
37 if let Some(Token::Integer(text)) = $parser.token() {
190 Some(Token::Identifier("run")) | Some(Token::Identifier("print")) => { in parse_run_command()
203 lookahead: Option<Token<'a>>,
454 fn consume(&mut self) -> Token<'a> { in consume()
467 fn token(&mut self) -> Option<Token<'a>> { in token()
472 Token::Comment(text) => { in token()
519 fn match_token(&mut self, want: Token<'a>, err_msg: &str) -> ParseResult<Token<'a>> { in match_token()
528 fn optional(&mut self, want: Token<'a>) -> bool { in optional()
539 fn match_identifier(&mut self, want: &'static str, err_msg: &str) -> ParseResult<Token<'a>> { in match_identifier()
540 if self.token() == Some(Token::Identifier(want)) { in match_identifier()
549 if let Some(Token::Type(t)) = self.token() { in match_type()
559 if let Some(Token::StackSlot(ss)) = self.token() { in match_ss()
570 if let Some(Token::DynamicStackSlot(ss)) = self.token() { in match_dss()
581 if let Some(Token::DynamicType(dt)) = self.token() { in match_dt()
597 if let Some(Token::GlobalValue(gv)) = self.token() { in match_gv()
608 if let Some(Token::FuncRef(fnref)) = self.token() { in match_fn()
619 if let Some(Token::SigRef(sigref)) = self.token() { in match_sig()
630 if let Some(Token::Constant(c)) = self.token() { in match_constant()
641 if let Some(Token::Identifier("stack_limit")) = self.token() { in match_stack_limit()
650 if let Some(Token::Block(block)) = self.token() { in match_block()
660 if let Some(Token::Value(v)) = self.token() { in match_value()
678 if let Some(Token::Integer(text)) = self.token() { in match_imm64()
690 if let Some(Token::Integer(text)) = self.token() { in match_hexadecimal_constant()
707 let constant_data = if self.optional(Token::LBracket) { in match_uimm128()
710 self.match_token(Token::RBracket, "expected a terminating right bracket")?; in match_uimm128()
730 if let Some(Token::Integer(text)) = self.token() { in match_uimm64()
743 if let Some(Token::Integer(text)) = self.token() { in match_uimm32()
756 if let Some(Token::Integer(text)) = self.token() { in match_uimm8()
799 if let Some(Token::Integer(text)) = self.token() { in optional_offset32()
816 if let Some(Token::Integer(text)) = self.token() { in optional_offset_imm64()
830 if let Some(Token::Float(text)) = self.token() { in match_ieee16()
842 if let Some(Token::Float(text)) = self.token() { in match_ieee32()
854 if let Some(Token::Float(text)) = self.token() { in match_ieee64()
866 if let Some(Token::Float(text)) = self.token() { in match_ieee128()
878 if let Some(Token::Identifier(text)) = self.token() { in match_enum()
889 while let Some(Token::Identifier(text)) = self.token() { in optional_memflags()
903 if let Some(Token::Identifier(text)) = self.token() { in match_any_identifier()
915 if let Some(Token::SourceLoc(text)) = self.token() { in optional_srcloc()
930 if self.optional(Token::LAngle) { in optional_debug_tags()
932 while !self.optional(Token::RAngle) { in optional_debug_tags()
934 Some(Token::Integer(_)) => { in optional_debug_tags()
938 Some(Token::StackSlot(slot)) => { in optional_debug_tags()
949 if !self.optional(Token::Comma) { in optional_debug_tags()
950 self.match_token(Token::RAngle, "expected `,` or `>`")?; in optional_debug_tags()
1002 while self.token() == Some(Token::Identifier("test")) { in parse_test_commands()
1085 while let Some(Token::Identifier(command)) = self.token() { in parse_target_specs()
1155 while self.token() == Some(Token::Identifier("feature")) { in parse_cranelift_features()
1157 let has = !self.optional(Token::Bang); in parse_cranelift_features()
1159 (Some(Token::String(flag)), true) => list.push(Feature::With(flag)), in parse_cranelift_features()
1160 (Some(Token::String(flag)), false) => list.push(Feature::Without(flag)), in parse_cranelift_features()
1213 self.match_token(Token::LBrace, "expected '{' before function body")?; in parse_function()
1223 self.match_token(Token::RBrace, "expected '}' after function body")?; in parse_function()
1257 Some(Token::Name(s)) => { in parse_user_func_name()
1261 Some(Token::UserRef(namespace)) => { in parse_user_func_name()
1264 Some(Token::Colon) => { in parse_user_func_name()
1267 Some(Token::Integer(index_str)) => { in parse_user_func_name()
1295 Some(Token::Name(s)) => { in parse_external_name()
1301 Some(Token::UserNameRef(name_ref)) => { in parse_external_name()
1308 Some(Token::UserRef(namespace)) => { in parse_external_name()
1310 if let Some(Token::Colon) = self.token() { in parse_external_name()
1313 Some(Token::Integer(index_str)) => { in parse_external_name()
1358 self.match_token(Token::LPar, "expected function signature: ( args... )")?; in parse_signature()
1360 if self.token() != Some(Token::RPar) { in parse_signature()
1363 self.match_token(Token::RPar, "expected ')' after function arguments")?; in parse_signature()
1364 if self.optional(Token::Arrow) { in parse_signature()
1370 Some(Token::Identifier(text)) => match text.parse() { in parse_signature()
1394 while self.optional(Token::Comma) { in parse_abi_param_list()
1408 while let Some(Token::Identifier(s)) = self.token() { in parse_abi_param()
1414 self.match_token(Token::LPar, "expected '(' to begin sarg size")?; in parse_abi_param()
1416 self.match_token(Token::RPar, "expected ')' to end sarg size")?; in parse_abi_param()
1447 Some(Token::StackSlot(..)) => { in parse_preamble()
1453 Some(Token::DynamicStackSlot(..)) => { in parse_preamble()
1459 Some(Token::DynamicType(..)) => { in parse_preamble()
1465 Some(Token::GlobalValue(..)) => { in parse_preamble()
1470 Some(Token::SigRef(..)) => { in parse_preamble()
1476 Some(Token::FuncRef(..)) => { in parse_preamble()
1481 Some(Token::Constant(..)) => { in parse_preamble()
1486 Some(Token::Identifier("stack_limit")) => { in parse_preamble()
1507 self.match_token(Token::Equal, "expected '=' in stack slot declaration")?; in parse_stack_slot_decl()
1524 while self.token() == Some(Token::Comma) { in parse_stack_slot_decl()
1527 Some(Token::Identifier("align")) => { in parse_stack_slot_decl()
1529 self.match_token(Token::Equal, "expected `=` after flag")?; in parse_stack_slot_decl()
1536 Some(Token::Identifier("key")) => { in parse_stack_slot_decl()
1538 self.match_token(Token::Equal, "expected `=` after flag")?; in parse_stack_slot_decl()
1570 self.match_token(Token::Equal, "expected '=' in stack slot declaration")?; in parse_dynamic_stack_slot_decl()
1584 self.match_token(Token::Equal, "expected '=' in stack slot declaration")?; in parse_dynamic_type_decl()
1588 Token::Multiply, in parse_dynamic_type_decl()
1611 self.match_token(Token::Equal, "expected '=' in global value declaration")?; in parse_global_value_decl()
1617 Token::Dot, in parse_global_value_decl()
1637 Token::Dot, in parse_global_value_decl()
1643 Token::Comma, in parse_global_value_decl()
1654 let colocated = self.optional(Token::Identifier("colocated")); in parse_global_value_decl()
1655 let tls = self.optional(Token::Identifier("tls")); in parse_global_value_decl()
1667 Token::Dot, in parse_global_value_decl()
1690 self.match_token(Token::Equal, "expected '=' in signature decl")?; in parse_signature_decl()
1712 self.match_token(Token::Equal, "expected '=' in function decl")?; in parse_function_decl()
1717 let colocated = self.optional(Token::Identifier("colocated")); in parse_function_decl()
1719 let patchable = self.optional(Token::Identifier("patchable")); in parse_function_decl()
1726 Some(Token::LPar) => { in parse_function_decl()
1740 Some(Token::SigRef(sig_src)) => { in parse_function_decl()
1775 self.match_token(Token::LBracket, "expected '[' before jump table contents")?; in parse_jump_table()
1780 Some(Token::Block(dest)) => { in parse_jump_table()
1787 Some(Token::Comma) => { in parse_jump_table()
1789 if let Some(Token::Block(dest)) = self.token() { in parse_jump_table()
1797 Some(Token::RBracket) => break, in parse_jump_table()
1802 Some(Token::RBracket) => (), in parse_jump_table()
1823 self.match_token(Token::Comma, "expected comma after signature argument")?; in parse_exception_table()
1832 Token::Comma, in parse_exception_table()
1837 Token::LBracket, in parse_exception_table()
1842 Some(Token::RBracket) => { in parse_exception_table()
1845 Some(Token::ExceptionTag(tag)) => { in parse_exception_table()
1847 self.match_token(Token::Colon, "expected ':' after exception tag")?; in parse_exception_table()
1854 Some(Token::Identifier("default")) => { in parse_exception_table()
1856 self.match_token(Token::Colon, "expected ':' after 'default'")?; in parse_exception_table()
1862 Some(Token::Identifier("context")) => { in parse_exception_table()
1870 if let Some(Token::Comma) = self.token() { in parse_exception_table()
1876 self.match_token(Token::RBracket, "expected closing bracket")?; in parse_exception_table()
1890 self.match_token(Token::Equal, "expected '=' in constant decl")?; in parse_constant_decl()
1891 let data = if let Some(Token::Type(_)) = self.token() { in parse_constant_decl()
1910 self.match_token(Token::Equal, "expected '=' in stack limit decl")?; in parse_stack_limit_decl()
1912 Some(Token::GlobalValue(base_num)) => match GlobalValue::with_number(base_num) { in parse_stack_limit_decl()
1932 while self.token() != Some(Token::RBrace) { in parse_function_body()
1979 if self.token() == Some(Token::LPar) { in parse_basic_block()
1983 if self.optional(Token::Cold) { in parse_basic_block()
1987 self.match_token(Token::Colon, "expected ':' after block parameters")?; in parse_basic_block()
1995 Some(Token::Value(_)) in parse_basic_block()
1996 | Some(Token::Identifier(_)) in parse_basic_block()
1997 | Some(Token::LBracket) in parse_basic_block()
1998 | Some(Token::SourceLoc(_)) in parse_basic_block()
1999 | Some(Token::LAngle) => true, in parse_basic_block()
2019 Some(Token::Arrow) => { in parse_basic_block()
2023 Some(Token::Equal) => { in parse_basic_block()
2040 self.match_token(Token::LPar, "expected '(' before block parameters")?; in parse_block_params()
2043 if self.token() == Some(Token::RPar) { in parse_block_params()
2052 while self.optional(Token::Comma) { in parse_block_params()
2058 self.match_token(Token::RPar, "expected ')' after block parameters")?; in parse_block_params()
2072 self.match_token(Token::Colon, "expected ':' after block argument")?; in parse_block_param()
2096 if let Some(Token::Value(v)) = self.token() {
2102 while self.optional(Token::Comma) {
2174 let opcode = if let Some(Token::Identifier(text)) = self.token() { in parse_instruction()
2187 let explicit_ctrl_type = if self.optional(Token::Dot) { in parse_instruction()
2188 if let Some(Token::Type(_t)) = self.token() { in parse_instruction()
2205 if self.optional(Token::Comma) { in parse_instruction()
2207 Token::Identifier("stack_map"), in parse_instruction()
2217 self.match_token(Token::Equal, "expected `= [...]`")?; in parse_instruction()
2218 self.match_token(Token::LBracket, "expected `[...]`")?; in parse_instruction()
2219 while !self.optional(Token::RBracket) { in parse_instruction()
2221 self.match_token(Token::At, "expected `@ <slot> + <offset>`")?; in parse_instruction()
2224 Some(Token::Integer(s)) if s.starts_with('+') => { in parse_instruction()
2228 self.match_token(Token::Plus, "expected `+ <offset>`")?; in parse_instruction()
2235 if !self.optional(Token::Comma) { in parse_instruction()
2236 self.match_token(Token::RBracket, "expected `,` or `]`")?; in parse_instruction()
2373 if let Some(Token::Value(v)) = self.token() { in parse_value_list()
2380 while self.optional(Token::Comma) { in parse_value_list()
2390 if !self.optional(Token::LPar) { in parse_opt_block_call_args()
2395 while self.token() != Some(Token::RPar) { in parse_opt_block_call_args()
2397 if self.token() == Some(Token::Comma) { in parse_opt_block_call_args()
2404 self.match_token(Token::RPar, "expected ')' after arguments")?; in parse_opt_block_call_args()
2411 Some(Token::Value(v)) => { in parse_block_call_arg()
2415 Some(Token::TryCallRet(i)) => { in parse_block_call_arg()
2419 Some(Token::TryCallExn(i)) => { in parse_block_call_arg()
2434 Some(Token::Identifier("run")) => { in parse_run_command()
2436 if self.optional(Token::Colon) { in parse_run_command()
2456 Some(Token::Identifier("print")) => { in parse_run_command()
2458 if self.optional(Token::Colon) { in parse_run_command()
2479 if let Some(Token::Name(name)) = self.token() { in parse_run_invocation()
2482 Token::LPar, in parse_run_invocation()
2494 Token::RPar, in parse_run_invocation()
2507 if self.optional(Token::Equal) { in parse_run_comparison()
2508 self.match_token(Token::Equal, "expected another =")?; in parse_run_comparison()
2510 } else if self.optional(Token::Bang) { in parse_run_comparison()
2511 self.match_token(Token::Equal, "expected a =")?; in parse_run_comparison()
2525 self.match_token(Token::LBracket, "expected a left bracket [")?; in parse_run_returns()
2532 self.match_token(Token::RBracket, "expected a right bracket ]")?; in parse_run_returns()
2547 Token::Comma, in parse_data_value_list()
2634 let constant_handle = if let Some(Token::Constant(_)) = self.token() { in parse_inst_operands()
2668 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2677 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2683 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2695 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2697 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2724 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2730 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2744 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2748 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2754 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2756 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2766 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2768 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2780 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2791 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2803 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2814 self.match_token(Token::LPar, "expected '(' before arguments")?; in parse_inst_operands()
2816 self.match_token(Token::RPar, "expected ')' after arguments")?; in parse_inst_operands()
2826 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2828 self.match_token(Token::LPar, "expected '(' before arguments")?; in parse_inst_operands()
2830 self.match_token(Token::RPar, "expected ')' after arguments")?; in parse_inst_operands()
2840 self.match_token(Token::LPar, "expected '(' before arguments")?; in parse_inst_operands()
2842 self.match_token(Token::RPar, "expected ')' after arguments")?; in parse_inst_operands()
2843 self.match_token(Token::Comma, "expected ',' after argument list")?; in parse_inst_operands()
2854 self.match_token(Token::LPar, "expected '(' before arguments")?; in parse_inst_operands()
2856 self.match_token(Token::RPar, "expected ')' after arguments")?; in parse_inst_operands()
2857 self.match_token(Token::Comma, "expected ',' after argument list")?; in parse_inst_operands()
2882 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2903 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2926 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2942 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2949 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2951 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2963 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2984 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2994 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
2996 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()
3006 self.match_token(Token::Comma, "expected ',' between operands")?; in parse_inst_operands()