pub enum ExprP<P>where
P: AstPayload,{
Show 22 variants
Tuple(Vec<Spanned<ExprP<P>>>),
Dot(Box<Spanned<ExprP<P>>>, Spanned<String>),
Call(Box<Spanned<ExprP<P>>>, CallArgsP<P>),
Index(Box<(Spanned<ExprP<P>>, Spanned<ExprP<P>>)>),
Index2(Box<(Spanned<ExprP<P>>, Spanned<ExprP<P>>, Spanned<ExprP<P>>)>),
Slice(Box<Spanned<ExprP<P>>>, Option<Box<Spanned<ExprP<P>>>>, Option<Box<Spanned<ExprP<P>>>>, Option<Box<Spanned<ExprP<P>>>>),
Identifier(Spanned<IdentP<P>>),
Lambda(LambdaP<P>),
Literal(AstLiteral),
Not(Box<Spanned<ExprP<P>>>),
Minus(Box<Spanned<ExprP<P>>>),
Plus(Box<Spanned<ExprP<P>>>),
BitNot(Box<Spanned<ExprP<P>>>),
Op(Box<Spanned<ExprP<P>>>, BinOp, Box<Spanned<ExprP<P>>>),
If(Box<(Spanned<ExprP<P>>, Spanned<ExprP<P>>, Spanned<ExprP<P>>)>),
List(Vec<Spanned<ExprP<P>>>),
Dict(Vec<(Spanned<ExprP<P>>, Spanned<ExprP<P>>)>),
Set(Vec<Spanned<ExprP<P>>>),
ListComprehension(Box<Spanned<ExprP<P>>>, Box<ForClauseP<P>>, Vec<ClauseP<P>>),
SetComprehension(Box<Spanned<ExprP<P>>>, Box<ForClauseP<P>>, Vec<ClauseP<P>>),
DictComprehension(Box<(Spanned<ExprP<P>>, Spanned<ExprP<P>>)>, Box<ForClauseP<P>>, Vec<ClauseP<P>>),
FString(Spanned<FStringP<P>>),
}Variants§
Tuple(Vec<Spanned<ExprP<P>>>)
Dot(Box<Spanned<ExprP<P>>>, Spanned<String>)
Call(Box<Spanned<ExprP<P>>>, CallArgsP<P>)
Index(Box<(Spanned<ExprP<P>>, Spanned<ExprP<P>>)>)
Index2(Box<(Spanned<ExprP<P>>, Spanned<ExprP<P>>, Spanned<ExprP<P>>)>)
Slice(Box<Spanned<ExprP<P>>>, Option<Box<Spanned<ExprP<P>>>>, Option<Box<Spanned<ExprP<P>>>>, Option<Box<Spanned<ExprP<P>>>>)
Identifier(Spanned<IdentP<P>>)
Lambda(LambdaP<P>)
Literal(AstLiteral)
Not(Box<Spanned<ExprP<P>>>)
Minus(Box<Spanned<ExprP<P>>>)
Plus(Box<Spanned<ExprP<P>>>)
BitNot(Box<Spanned<ExprP<P>>>)
Op(Box<Spanned<ExprP<P>>>, BinOp, Box<Spanned<ExprP<P>>>)
If(Box<(Spanned<ExprP<P>>, Spanned<ExprP<P>>, Spanned<ExprP<P>>)>)
List(Vec<Spanned<ExprP<P>>>)
Dict(Vec<(Spanned<ExprP<P>>, Spanned<ExprP<P>>)>)
Set(Vec<Spanned<ExprP<P>>>)
ListComprehension(Box<Spanned<ExprP<P>>>, Box<ForClauseP<P>>, Vec<ClauseP<P>>)
SetComprehension(Box<Spanned<ExprP<P>>>, Box<ForClauseP<P>>, Vec<ClauseP<P>>)
DictComprehension(Box<(Spanned<ExprP<P>>, Spanned<ExprP<P>>)>, Box<ForClauseP<P>>, Vec<ClauseP<P>>)
FString(Spanned<FStringP<P>>)
Implementations§
Source§impl<A> ExprP<A>where
A: AstPayload,
impl<A> ExprP<A>where
A: AstPayload,
pub fn into_map_payload<B>(
self,
f: &mut impl AstPayloadFunction<A, B>,
) -> ExprP<B>where
B: AstPayload,
Source§impl<P> ExprP<P>where
P: AstPayload,
impl<P> ExprP<P>where
P: AstPayload,
pub fn visit_expr<'a>(&'a self, f: impl FnMut(&'a Spanned<ExprP<P>>))
Sourcepub fn visit_expr_err<'a, E>(
&'a self,
f: impl FnMut(&'a Spanned<ExprP<P>>) -> Result<(), E>,
) -> Result<(), E>
pub fn visit_expr_err<'a, E>( &'a self, f: impl FnMut(&'a Spanned<ExprP<P>>) -> Result<(), E>, ) -> Result<(), E>
Visit children expressions.
pub fn visit_expr_err_mut<'a, E>( &'a mut self, f: impl FnMut(&'a mut Spanned<ExprP<P>>) -> Result<(), E>, ) -> Result<(), E>
pub fn visit_expr_mut<'a>( &'a mut self, f: impl FnMut(&'a mut Spanned<ExprP<P>>), )
Trait Implementations§
Auto Trait Implementations§
impl<P> Freeze for ExprP<P>
impl<P> RefUnwindSafe for ExprP<P>where
<P as AstPayload>::DefPayload: RefUnwindSafe,
<P as AstPayload>::IdentPayload: RefUnwindSafe,
<P as AstPayload>::IdentAssignPayload: RefUnwindSafe,
<P as AstPayload>::TypeExprPayload: RefUnwindSafe,
impl<P> Send for ExprP<P>where
<P as AstPayload>::DefPayload: Send,
<P as AstPayload>::IdentPayload: Send,
<P as AstPayload>::IdentAssignPayload: Send,
<P as AstPayload>::TypeExprPayload: Send,
impl<P> Sync for ExprP<P>where
<P as AstPayload>::DefPayload: Sync,
<P as AstPayload>::IdentPayload: Sync,
<P as AstPayload>::IdentAssignPayload: Sync,
<P as AstPayload>::TypeExprPayload: Sync,
impl<P> Unpin for ExprP<P>where
<P as AstPayload>::DefPayload: Unpin,
<P as AstPayload>::IdentPayload: Unpin,
<P as AstPayload>::IdentAssignPayload: Unpin,
impl<P> UnwindSafe for ExprP<P>where
<P as AstPayload>::DefPayload: UnwindSafe,
<P as AstPayload>::IdentPayload: UnwindSafe,
<P as AstPayload>::IdentAssignPayload: UnwindSafe,
<P as AstPayload>::TypeExprPayload: UnwindSafe,
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