pub enum Type {
Reference(TypeRef),
Tuple(TypeTuple),
PathWithGenerics(PathWithGenerics),
Path(TypePath),
}Variants§
Implementations§
Source§impl Type
impl Type
Sourcepub fn as_result(&self) -> Option<(&Type, &Type)>
pub fn as_result(&self) -> Option<(&Type, &Type)>
Extract Ok and Err types if this is Result<T, E>
Sourcepub fn has_lifetime(&self) -> bool
pub fn has_lifetime(&self) -> bool
Check if type contains a lifetime anywhere in the tree
Sourcepub fn has_named_lifetime(&self, name: &str) -> bool
pub fn has_named_lifetime(&self, name: &str) -> bool
Check if type contains the named lifetime anywhere in the tree.
Sourcepub fn has_non_named_lifetime(&self, name: &str) -> bool
pub fn has_non_named_lifetime(&self, name: &str) -> bool
Check if type contains any named lifetime other than name.
Sourcepub fn has_elided_reference_lifetime(&self) -> bool
pub fn has_elided_reference_lifetime(&self) -> bool
Check if type contains any &T reference without an explicit lifetime.
We require explicit 'roam for borrowed RPC return payloads.
Sourcepub fn contains_channel(&self) -> bool
pub fn contains_channel(&self) -> bool
Check if type contains Tx or Rx at any nesting level
Note: This is a heuristic based on type names. Proper validation should happen at codegen time when we can resolve types properly.
Trait Implementations§
Source§impl ToTokens for Type
impl ToTokens for Type
Source§fn to_tokens(&self, tokens: &mut TokenStream)
fn to_tokens(&self, tokens: &mut TokenStream)
Source§fn to_token_iter(&self) -> TokenIter
fn to_token_iter(&self) -> TokenIter
Convert
&self into a TokenIter object.Source§fn to_token_stream(&self) -> TokenStream
fn to_token_stream(&self) -> TokenStream
Convert
&self into a TokenStream object.Source§fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
Convert
self into a TokenStream object.Auto Trait Implementations§
impl Freeze for Type
impl RefUnwindSafe for Type
impl !Send for Type
impl !Sync for Type
impl Unpin for Type
impl UnsafeUnpin for Type
impl UnwindSafe for Type
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DynamicTokens for T
impl<T> DynamicTokens for T
Source§impl<T> Parse for Twhere
T: Parser,
impl<T> Parse for Twhere
T: Parser,
Source§fn parse(tokens: &mut TokenIter) -> Result<Self, Error>
fn parse(tokens: &mut TokenIter) -> Result<Self, Error>
This is the user facing API to parse grammatical entities. Calls a
parser() within a
transaction. Commits changes on success and returns the parsed value. Read more