From 55d8c2813cc381d44a825dfe27bc3c356bec8bda Mon Sep 17 00:00:00 2001 From: koushiro Date: Mon, 11 Nov 2019 11:36:27 +0800 Subject: [PATCH] Fix parse_from_attr Signed-off-by: koushiro --- lang/src/parser.rs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/lang/src/parser.rs b/lang/src/parser.rs index 68003f5e..21c0fb37 100644 --- a/lang/src/parser.rs +++ b/lang/src/parser.rs @@ -115,9 +115,14 @@ impl ast::ItemEnvTypesMeta { let first_segment = attr .path .segments - .first() - .expect("paths have at least one segment"); - let ident = first_segment.ident.clone(); + .pairs() + .next() + .expect("paths have at least one segment") + .into_tuple(); + if let Some(colon) = first_segment.1 { + return Err(syn::Error::new(colon.spans[0], "expected meta value")) + } + let ident = first_segment.0.ident.clone(); let parser = |input: ParseStream<'_>| { let eq_token = input.parse()?; let ty = input.parse()?; -- 2.22.0