Struct proc_macro_kwargs::args::ParsedKeywordArguments
source · pub struct ParsedKeywordArguments<K: MacroKeywordArgs> { /* private fields */ }
Expand description
The list of parsed keyword arguments
Implementations§
source§impl<K: MacroKeywordArgs> ParsedKeywordArguments<K>
impl<K: MacroKeywordArgs> ParsedKeywordArguments<K>
sourcepub fn get(&self, id: K::ArgId) -> Option<&KeywordArg<K>>
pub fn get(&self, id: K::ArgId) -> Option<&KeywordArg<K>>
Lookup a argument by its id,
returning None
if it’s missing
sourcepub fn take(&mut self, id: K::ArgId) -> Option<KeywordArg<K>>
pub fn take(&mut self, id: K::ArgId) -> Option<KeywordArg<K>>
Consume the argument with the specified id,
returning None
if it’s missing
Implicitly shifts the ordering of the map.
sourcepub fn require(&mut self, id: K::ArgId) -> Result<KeywordArg<K>>
pub fn require(&mut self, id: K::ArgId) -> Result<KeywordArg<K>>
Require that the argument with the specified id exists, returning an error if it is missing
Consumes the argument, as if calling take
sourcepub fn iter(&self) -> impl Iterator<Item = &KeywordArg<K>> + '_
pub fn iter(&self) -> impl Iterator<Item = &KeywordArg<K>> + '_
Iterate over the original list of arguments, in the order of their declaration
Trait Implementations§
source§impl<K: MacroKeywordArgs> MacroArg for ParsedKeywordArguments<K>
impl<K: MacroKeywordArgs> MacroArg for ParsedKeywordArguments<K>
source§fn parse_macro_arg(stream: ParseStream<'_>) -> Result<Self>
fn parse_macro_arg(stream: ParseStream<'_>) -> Result<Self>
Parse the argument to the macro
source§impl<K: MacroKeywordArgs> Parse for ParsedKeywordArguments<K>
impl<K: MacroKeywordArgs> Parse for ParsedKeywordArguments<K>
fn parse(stream: ParseStream<'_>) -> Result<Self>
Auto Trait Implementations§
impl<K> Freeze for ParsedKeywordArguments<K>
impl<K> RefUnwindSafe for ParsedKeywordArguments<K>where
<K as MacroKeywordArgs>::ArgId: RefUnwindSafe,
<K as MacroKeywordArgs>::ParsedArg: RefUnwindSafe,
impl<K> !Send for ParsedKeywordArguments<K>
impl<K> !Sync for ParsedKeywordArguments<K>
impl<K> Unpin for ParsedKeywordArguments<K>
impl<K> UnwindSafe for ParsedKeywordArguments<K>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more