Lines Matching refs:parse
1018 use crate::parse::discouraged::Speculative as _;
1020 use crate::parse::ParseBuffer;
1021 use crate::parse::{Parse, ParseStream, Result};
1031 // statement's condition, we cannot parse a struct literal.
1040 fn parse(input: ParseStream) -> Result<Self> {
1050 /// An alternative to the primary `Expr::parse` parser (from the
1073 /// We would want to parse the above using `Expr::parse` after the `=`
1092 /// For that reason we would want to parse if-conditions using
1099 /// either parse behavior could work in most positions, and language
1197 if let Some(op) = match ahead.parse::<BinOp>() {
1223 let eq_token: Token![=] = input.parse()?;
1240 let limits: RangeLimits = input.parse()?;
1268 let as_token: Token![as] = input.parse()?;
1290 if let Some(op) = match ahead.parse::<BinOp>() {
1312 let as_token: Token![as] = input.parse()?;
1331 if let Ok(op) = input.fork().parse() {
1385 let and_token: Token![&] = input.parse()?;
1389 Some(input.parse()?)
1393 let mutability: Option<Token![mut]> = input.parse()?;
1395 input.parse::<Token![const]>()?;
1420 and_token: input.parse()?,
1421 mutability: input.parse()?,
1427 op: input.parse()?,
1471 args: content.parse_terminated(Expr::parse, Token![,])?,
1480 let mut dot_token: Token![.] = input.parse()?;
1482 let float_token: Option<LitFloat> = input.parse()?;
1489 let await_token: Option<Token![await]> = input.parse()?;
1500 let member: Member = input.parse()?;
1517 args: content.parse_terminated(Expr::parse, Token![,])?,
1535 index: content.parse()?,
1541 question_token: input.parse()?,
1561 args: content.parse_terminated(Expr::parse, Token![,])?,
1567 let mut dot_token: Token![.] = input.parse()?;
1569 let float_token: Option<LitFloat> = input.parse()?;
1576 let member: Member = input.parse()?;
1578 let colon2_token: Token![::] = input.parse()?;
1596 args: content.parse_terminated(Expr::parse, Token![,])?,
1614 index: content.parse()?,
1631 input.parse().map(Expr::Lit)
1635 input.parse().map(Expr::Async)
1637 input.parse().map(Expr::TryBlock)
1665 input.parse().map(Expr::Continue)
1671 input.parse().map(Expr::Let)
1673 input.parse().map(Expr::If)
1675 input.parse().map(Expr::While)
1677 input.parse().map(Expr::ForLoop)
1679 input.parse().map(Expr::Loop)
1681 input.parse().map(Expr::Match)
1683 input.parse().map(Expr::Yield)
1685 input.parse().map(Expr::Unsafe)
1687 input.parse().map(Expr::Const)
1689 input.parse().map(Expr::Block)
1693 input.parse().map(Expr::Infer)
1703 let the_label: Label = input.parse()?;
1705 Expr::While(input.parse()?)
1707 Expr::ForLoop(input.parse()?)
1709 Expr::Loop(input.parse()?)
1711 Expr::Block(input.parse()?)
1730 input.parse().map(Expr::Lit)
1749 if content.parse::<Expr>().is_ok() && content.is_empty() {
1763 input.parse::<kw::builtin>()?;
1764 input.parse::<Token![#]>()?;
1765 input.parse::<Ident>()?;
1769 args.parse::<TokenStream>()?;
1799 let bang_token: Token![!] = input.parse()?;
1827 fn parse(input: ParseStream) -> Result<Self> {
1830 mac: input.parse()?,
1847 let first: Expr = content.parse()?;
1859 let punct = content.parse()?;
1864 let value = content.parse()?;
1886 let first: Expr = content.parse()?;
1891 let punct = content.parse()?;
1896 let value = content.parse()?;
1905 let semi_token: Token![;] = content.parse()?;
1906 let len: Expr = content.parse()?;
1922 fn parse(input: ParseStream) -> Result<Self> {
1928 let first: Expr = content.parse()?;
1933 let punct = content.parse()?;
1948 fn parse(input: ParseStream) -> Result<Self> {
1953 expr: content.parse()?,
1954 semi_token: content.parse()?,
1955 len: content.parse()?,
1972 Expr::If(input.parse()?)
1974 Expr::While(input.parse()?)
1978 Expr::ForLoop(input.parse()?)
1980 Expr::Loop(input.parse()?)
1982 Expr::Match(input.parse()?)
1984 Expr::TryBlock(input.parse()?)
1986 Expr::Unsafe(input.parse()?)
1988 Expr::Const(input.parse()?)
1990 Expr::Block(input.parse()?)
2042 fn parse(input: ParseStream) -> Result<Self> {
2045 lit: input.parse()?,
2055 let mut inner: Expr = group.content.parse()?;
2087 fn parse(input: ParseStream) -> Result<Self> {
2097 expr: content.parse()?,
2104 fn parse(input: ParseStream) -> Result<Self> {
2107 let_token: input.parse()?,
2109 eq_token: input.parse()?,
2122 fn parse(input: ParseStream) -> Result<Self> {
2126 if_token: input.parse()?,
2128 then_branch: input.parse()?,
2142 let else_token: Token![else] = input.parse()?;
2146 input.parse().map(Expr::If)?
2151 block: input.parse()?,
2163 fn parse(input: ParseStream) -> Result<Self> {
2166 underscore_token: input.parse()?,
2174 fn parse(input: ParseStream) -> Result<Self> {
2176 let label: Option<Label> = input.parse()?;
2177 let for_token: Token![for] = input.parse()?;
2181 let in_token: Token![in] = input.parse()?;
2204 fn parse(input: ParseStream) -> Result<Self> {
2206 let label: Option<Label> = input.parse()?;
2207 let loop_token: Token![loop] = input.parse()?;
2226 fn parse(input: ParseStream) -> Result<Self> {
2228 let match_token: Token![match] = input.parse()?;
2237 arms.push(content.call(Arm::parse)?);
2260 fn parse(input: ParseStream) -> Result<Self> {
2261 let mut expr: Expr = input.parse()?;
2292 fn parse(input: ParseStream) -> Result<Self> {
2307 op: input.parse()?,
2315 fn parse(input: ParseStream) -> Result<Self> {
2324 fn parse(input: ParseStream) -> Result<Self> {
2328 and_token: input.parse()?,
2329 mutability: input.parse()?,
2338 fn parse(input: ParseStream) -> Result<Self> {
2347 fn parse(input: ParseStream) -> Result<Self> {
2356 fn parse(input: ParseStream) -> Result<Self> {
2359 try_token: input.parse()?,
2360 block: input.parse()?,
2368 fn parse(input: ParseStream) -> Result<Self> {
2371 yield_token: input.parse()?,
2374 Some(input.parse()?)
2385 let lifetimes: Option<BoundLifetimes> = input.parse()?;
2386 let constness: Option<Token![const]> = input.parse()?;
2387 let movability: Option<Token![static]> = input.parse()?;
2388 let asyncness: Option<Token![async]> = input.parse()?;
2389 let capture: Option<Token![move]> = input.parse()?;
2390 let or1_token: Token![|] = input.parse()?;
2402 let punct: Token![,] = input.parse()?;
2406 let or2_token: Token![|] = input.parse()?;
2409 let arrow_token: Token![->] = input.parse()?;
2410 let ty: Type = input.parse()?;
2411 let body: Block = input.parse()?;
2442 fn parse(input: ParseStream) -> Result<Self> {
2445 async_token: input.parse()?,
2446 capture: input.parse()?,
2447 block: input.parse()?,
2461 colon_token: input.parse()?,
2462 ty: input.parse()?,
2491 fn parse(input: ParseStream) -> Result<Self> {
2493 let label: Option<Label> = input.parse()?;
2494 let while_token: Token![while] = input.parse()?;
2515 fn parse(input: ParseStream) -> Result<Self> {
2516 let const_token: Token![const] = input.parse()?;
2534 fn parse(input: ParseStream) -> Result<Self> {
2536 name: input.parse()?,
2537 colon_token: input.parse()?,
2545 fn parse(input: ParseStream) -> Result<Self> {
2547 input.parse().map(Some)
2557 fn parse(input: ParseStream) -> Result<Self> {
2560 continue_token: input.parse()?,
2561 label: input.parse()?,
2568 let break_token: Token![break] = input.parse()?;
2571 let label: Option<Lifetime> = ahead.parse()?;
2605 return_token: input.parse()?,
2624 fn parse(input: ParseStream) -> Result<Self> {
2626 let member: Member = input.parse()?;
2628 let colon_token: Token![:] = input.parse()?;
2629 let value: Expr = input.parse()?;
2653 fn parse(input: ParseStream) -> Result<Self> {
2676 dot2_token: Some(content.parse()?),
2680 Some(Box::new(content.parse()?))
2685 fields.push(content.parse()?);
2689 let punct: Token![,] = content.parse()?;
2707 fn parse(input: ParseStream) -> Result<Self> {
2708 let unsafe_token: Token![unsafe] = input.parse()?;
2726 fn parse(input: ParseStream) -> Result<Self> {
2728 let label: Option<Label> = input.parse()?;
2745 let limits: RangeLimits = input.parse()?;
2769 fn parse(input: ParseStream) -> Result<Self> {
2775 input.parse().map(RangeLimits::Closed)
2777 input.parse().map(RangeLimits::HalfOpen)
2792 input.parse().map(RangeLimits::Closed)
2794 let dot3: Token![...] = input.parse()?;
2797 input.parse().map(RangeLimits::HalfOpen)
2806 fn parse(input: ParseStream) -> Result<Self> {
2820 fn parse(input: ParseStream) -> Result<Self> {
2822 input.parse().map(Member::Named)
2824 input.parse().map(Member::Unnamed)
2834 fn parse(input: ParseStream) -> Result<Arm> {
2841 let if_token: Token![if] = input.parse()?;
2842 let guard: Expr = input.parse()?;
2848 fat_arrow_token: input.parse()?,
2856 Some(input.parse()?)
2858 input.parse()?
2867 fn parse(input: ParseStream) -> Result<Self> {
2868 let lit: LitInt = input.parse()?;
2873 .parse()