pub enum AstNodeKindResolverwhere
i64: Archive,
f64: Archive,
bool: Archive,
Vec<StrSegment>: Archive,
String: Archive,
NodeId: Archive,
Vec<String>: Archive,
Option<NodeId>: Archive,
Vec<NodeId>: Archive,
Vec<AttrEntry>: Archive,
Vec<InheritClause>: Archive,
LambdaParam: Archive,
BinaryOp: Archive,
UnaryOp: Archive,{
Show 21 variants
Int(<i64 as Archive>::Resolver),
Float(<f64 as Archive>::Resolver),
Bool(<bool as Archive>::Resolver),
Null,
Str {
segments: <Vec<StrSegment> as Archive>::Resolver,
},
IndentedStr {
segments: <Vec<StrSegment> as Archive>::Resolver,
},
Path(<String as Archive>::Resolver),
Ident(<String as Archive>::Resolver),
Select {
target: <NodeId as Archive>::Resolver,
path: <Vec<String> as Archive>::Resolver,
fallback: <Option<NodeId> as Archive>::Resolver,
},
HasAttr {
target: <NodeId as Archive>::Resolver,
path: <Vec<String> as Archive>::Resolver,
},
List(<Vec<NodeId> as Archive>::Resolver),
AttrSet {
recursive: <bool as Archive>::Resolver,
entries: <Vec<AttrEntry> as Archive>::Resolver,
inherits: <Vec<InheritClause> as Archive>::Resolver,
},
LetIn {
bindings: <Vec<AttrEntry> as Archive>::Resolver,
inherits: <Vec<InheritClause> as Archive>::Resolver,
body: <NodeId as Archive>::Resolver,
},
With {
env: <NodeId as Archive>::Resolver,
body: <NodeId as Archive>::Resolver,
},
Assert {
condition: <NodeId as Archive>::Resolver,
body: <NodeId as Archive>::Resolver,
},
Lambda {
param: <LambdaParam as Archive>::Resolver,
body: <NodeId as Archive>::Resolver,
},
Apply {
function: <NodeId as Archive>::Resolver,
argument: <NodeId as Archive>::Resolver,
},
IfThenElse {
condition: <NodeId as Archive>::Resolver,
then_branch: <NodeId as Archive>::Resolver,
else_branch: <NodeId as Archive>::Resolver,
},
BinOp {
op: <BinaryOp as Archive>::Resolver,
left: <NodeId as Archive>::Resolver,
right: <NodeId as Archive>::Resolver,
},
UnaryOp {
op: <UnaryOp as Archive>::Resolver,
operand: <NodeId as Archive>::Resolver,
},
Unknown {
kind: <String as Archive>::Resolver,
source_text: <String as Archive>::Resolver,
},
}Expand description
The resolver for an archived AstNodeKind
Variants§
Int(<i64 as Archive>::Resolver)
The resolver for AstNodeKind::Int
Float(<f64 as Archive>::Resolver)
The resolver for AstNodeKind::Float
Bool(<bool as Archive>::Resolver)
The resolver for AstNodeKind::Bool
Null
The resolver for AstNodeKind::Null
Str
The resolver for AstNodeKind::Str
Fields
segments: <Vec<StrSegment> as Archive>::ResolverIndentedStr
The resolver for AstNodeKind::IndentedStr
Fields
segments: <Vec<StrSegment> as Archive>::ResolverPath(<String as Archive>::Resolver)
The resolver for AstNodeKind::Path
Ident(<String as Archive>::Resolver)
The resolver for AstNodeKind::Ident
Select
The resolver for AstNodeKind::Select
Fields
HasAttr
The resolver for AstNodeKind::HasAttr
List(<Vec<NodeId> as Archive>::Resolver)
The resolver for AstNodeKind::List
AttrSet
The resolver for AstNodeKind::AttrSet
Fields
inherits: <Vec<InheritClause> as Archive>::ResolverLetIn
The resolver for AstNodeKind::LetIn
Fields
inherits: <Vec<InheritClause> as Archive>::ResolverWith
The resolver for AstNodeKind::With
Assert
The resolver for AstNodeKind::Assert
Lambda
The resolver for AstNodeKind::Lambda
Apply
The resolver for AstNodeKind::Apply
IfThenElse
The resolver for AstNodeKind::IfThenElse
Fields
BinOp
The resolver for AstNodeKind::BinOp
Fields
UnaryOp
The resolver for AstNodeKind::UnaryOp
Unknown
The resolver for AstNodeKind::Unknown
Auto Trait Implementations§
impl Freeze for AstNodeKindResolver
impl RefUnwindSafe for AstNodeKindResolver
impl Send for AstNodeKindResolver
impl Sync for AstNodeKindResolver
impl Unpin for AstNodeKindResolver
impl UnsafeUnpin for AstNodeKindResolver
impl UnwindSafe for AstNodeKindResolver
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.