(input: ParseStream)
| 229 | } |
| 230 | |
| 231 | fn fallback_explicit_named_args(input: ParseStream) -> Result<FmtArguments> { |
| 232 | let mut args = FmtArguments { |
| 233 | named: BTreeSet::new(), |
| 234 | first_unnamed: None, |
| 235 | }; |
| 236 | |
| 237 | while !input.is_empty() { |
| 238 | if input.peek(Token![,]) |
| 239 | && input.peek2(Ident::peek_any) |
| 240 | && input.peek3(Token![=]) |
| 241 | && !input.peek3(Token![==]) |
| 242 | { |
| 243 | input.parse::<Token![,]>()?; |
| 244 | let ident: IdentUnraw = input.parse()?; |
| 245 | input.parse::<Token![=]>()?; |
| 246 | args.named.insert(ident); |
| 247 | } else { |
| 248 | input.parse::<TokenTree>()?; |
| 249 | } |
| 250 | } |
| 251 | |
| 252 | Ok(args) |
| 253 | } |
| 254 | |
| 255 | fn is_syn_full() -> bool { |
| 256 | // Expr::Block contains syn::Block which contains Vec<syn::Stmt>. In the |
no test coverage detected