blob: c876fa8a50ad0b1149cd84f9232ab4ea13525738 [file] [log] [blame]
David Tolnaydd26bd02020-09-06 23:00:17 -07001use syn::parse::{ParseStream, Result};
2use syn::{Ident, Path};
3
4pub struct QualifiedName {
5 pub segments: Vec<Ident>,
6}
7
8impl QualifiedName {
9 pub fn parse_unquoted(input: ParseStream) -> Result<Self> {
10 let path = input.call(Path::parse_mod_style)?;
11 let mut segments = Vec::with_capacity(path.segments.len());
12 for segment in path.segments {
13 segments.push(segment.ident);
14 }
15 Ok(QualifiedName { segments })
16 }
17}