Enum ra_ap_syntax::ast::Expr
source · [−]pub enum Expr {
Show 32 variants
ArrayExpr(ArrayExpr),
AwaitExpr(AwaitExpr),
BinExpr(BinExpr),
BlockExpr(BlockExpr),
BoxExpr(BoxExpr),
BreakExpr(BreakExpr),
CallExpr(CallExpr),
CastExpr(CastExpr),
ClosureExpr(ClosureExpr),
ContinueExpr(ContinueExpr),
FieldExpr(FieldExpr),
ForExpr(ForExpr),
IfExpr(IfExpr),
IndexExpr(IndexExpr),
Literal(Literal),
LoopExpr(LoopExpr),
MacroExpr(MacroExpr),
MatchExpr(MatchExpr),
MethodCallExpr(MethodCallExpr),
ParenExpr(ParenExpr),
PathExpr(PathExpr),
PrefixExpr(PrefixExpr),
RangeExpr(RangeExpr),
RecordExpr(RecordExpr),
RefExpr(RefExpr),
ReturnExpr(ReturnExpr),
TryExpr(TryExpr),
TupleExpr(TupleExpr),
WhileExpr(WhileExpr),
YieldExpr(YieldExpr),
LetExpr(LetExpr),
UnderscoreExpr(UnderscoreExpr),
}
Variants
ArrayExpr(ArrayExpr)
AwaitExpr(AwaitExpr)
BinExpr(BinExpr)
BlockExpr(BlockExpr)
BoxExpr(BoxExpr)
BreakExpr(BreakExpr)
CallExpr(CallExpr)
CastExpr(CastExpr)
ClosureExpr(ClosureExpr)
ContinueExpr(ContinueExpr)
FieldExpr(FieldExpr)
ForExpr(ForExpr)
IfExpr(IfExpr)
IndexExpr(IndexExpr)
Literal(Literal)
LoopExpr(LoopExpr)
MacroExpr(MacroExpr)
MatchExpr(MatchExpr)
MethodCallExpr(MethodCallExpr)
ParenExpr(ParenExpr)
PathExpr(PathExpr)
PrefixExpr(PrefixExpr)
RangeExpr(RangeExpr)
RecordExpr(RecordExpr)
RefExpr(RefExpr)
ReturnExpr(ReturnExpr)
TryExpr(TryExpr)
TupleExpr(TupleExpr)
WhileExpr(WhileExpr)
YieldExpr(YieldExpr)
LetExpr(LetExpr)
UnderscoreExpr(UnderscoreExpr)
Implementations
sourceimpl Expr
impl Expr
pub fn is_block_like(&self) -> bool
Trait Implementations
sourceimpl AstNode for Expr
impl AstNode for Expr
fn can_cast(kind: SyntaxKind) -> bool
fn cast(syntax: SyntaxNode) -> Option<Self>
fn syntax(&self) -> &SyntaxNode
fn clone_for_update(&self) -> Selfwhere
Self: Sized,
fn clone_subtree(&self) -> Selfwhere
Self: Sized,
sourceimpl From<ClosureExpr> for Expr
impl From<ClosureExpr> for Expr
sourcefn from(node: ClosureExpr) -> Expr
fn from(node: ClosureExpr) -> Expr
Converts to this type from the input type.
sourceimpl From<ContinueExpr> for Expr
impl From<ContinueExpr> for Expr
sourcefn from(node: ContinueExpr) -> Expr
fn from(node: ContinueExpr) -> Expr
Converts to this type from the input type.
sourceimpl From<MethodCallExpr> for Expr
impl From<MethodCallExpr> for Expr
sourcefn from(node: MethodCallExpr) -> Expr
fn from(node: MethodCallExpr) -> Expr
Converts to this type from the input type.
sourceimpl From<PrefixExpr> for Expr
impl From<PrefixExpr> for Expr
sourcefn from(node: PrefixExpr) -> Expr
fn from(node: PrefixExpr) -> Expr
Converts to this type from the input type.
sourceimpl From<RecordExpr> for Expr
impl From<RecordExpr> for Expr
sourcefn from(node: RecordExpr) -> Expr
fn from(node: RecordExpr) -> Expr
Converts to this type from the input type.
sourceimpl From<ReturnExpr> for Expr
impl From<ReturnExpr> for Expr
sourcefn from(node: ReturnExpr) -> Expr
fn from(node: ReturnExpr) -> Expr
Converts to this type from the input type.
sourceimpl From<UnderscoreExpr> for Expr
impl From<UnderscoreExpr> for Expr
sourcefn from(node: UnderscoreExpr) -> Expr
fn from(node: UnderscoreExpr) -> Expr
Converts to this type from the input type.
sourceimpl HasAttrs for Expr
impl HasAttrs for Expr
fn attrs(&self) -> AstChildren<Attr>ⓘNotable traits for AstChildren<N>impl<N: AstNode> Iterator for AstChildren<N> type Item = N;
fn has_atom_attr(&self, atom: &str) -> bool
sourceimpl PartialEq<Expr> for Expr
impl PartialEq<Expr> for Expr
impl Eq for Expr
impl StructuralEq for Expr
impl StructuralPartialEq for Expr
Auto Trait Implementations
impl !RefUnwindSafe for Expr
impl !Send for Expr
impl !Sync for Expr
impl Unpin for Expr
impl !UnwindSafe for Expr
Blanket Implementations
sourceimpl<N> AstNodeEdit for Nwhere
N: AstNode + Clone,
impl<N> AstNodeEdit for Nwhere
N: AstNode + Clone,
fn indent_level(&self) -> IndentLevel
fn indent(&self, level: IndentLevel) -> Self
fn dedent(&self, level: IndentLevel) -> Self
fn reset_indent(&self) -> Self
sourceimpl<T> AttrsOwnerEdit for Twhere
T: HasAttrs,
impl<T> AttrsOwnerEdit for Twhere
T: HasAttrs,
fn remove_attrs_and_docs(&self)
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.