Enum lib_ruby_parser::nodes::Node
source · [−]#[repr(C)]
pub enum Node {
Show 124 variants
Alias(Alias),
And(And),
AndAsgn(AndAsgn),
Arg(Arg),
Args(Args),
Array(Array),
ArrayPattern(ArrayPattern),
ArrayPatternWithTail(ArrayPatternWithTail),
BackRef(BackRef),
Begin(Begin),
Block(Block),
Blockarg(Blockarg),
BlockPass(BlockPass),
Break(Break),
Case(Case),
CaseMatch(CaseMatch),
Casgn(Casgn),
Cbase(Cbase),
Class(Class),
Complex(Complex),
Const(Const),
ConstPattern(ConstPattern),
CSend(CSend),
Cvar(Cvar),
Cvasgn(Cvasgn),
Def(Def),
Defined(Defined),
Defs(Defs),
Dstr(Dstr),
Dsym(Dsym),
EFlipFlop(EFlipFlop),
EmptyElse(EmptyElse),
Encoding(Encoding),
Ensure(Ensure),
Erange(Erange),
False(False),
File(File),
FindPattern(FindPattern),
Float(Float),
For(For),
ForwardArg(ForwardArg),
ForwardedArgs(ForwardedArgs),
Gvar(Gvar),
Gvasgn(Gvasgn),
Hash(Hash),
HashPattern(HashPattern),
Heredoc(Heredoc),
If(If),
IfGuard(IfGuard),
IFlipFlop(IFlipFlop),
IfMod(IfMod),
IfTernary(IfTernary),
Index(Index),
IndexAsgn(IndexAsgn),
InPattern(InPattern),
Int(Int),
Irange(Irange),
Ivar(Ivar),
Ivasgn(Ivasgn),
Kwarg(Kwarg),
Kwargs(Kwargs),
KwBegin(KwBegin),
Kwnilarg(Kwnilarg),
Kwoptarg(Kwoptarg),
Kwrestarg(Kwrestarg),
Kwsplat(Kwsplat),
Lambda(Lambda),
Line(Line),
Lvar(Lvar),
Lvasgn(Lvasgn),
Masgn(Masgn),
MatchAlt(MatchAlt),
MatchAs(MatchAs),
MatchCurrentLine(MatchCurrentLine),
MatchNilPattern(MatchNilPattern),
MatchPattern(MatchPattern),
MatchPatternP(MatchPatternP),
MatchRest(MatchRest),
MatchVar(MatchVar),
MatchWithLvasgn(MatchWithLvasgn),
Mlhs(Mlhs),
Module(Module),
Next(Next),
Nil(Nil),
NthRef(NthRef),
Numblock(Numblock),
OpAsgn(OpAsgn),
Optarg(Optarg),
Or(Or),
OrAsgn(OrAsgn),
Pair(Pair),
Pin(Pin),
Postexe(Postexe),
Preexe(Preexe),
Procarg0(Procarg0),
Rational(Rational),
Redo(Redo),
Regexp(Regexp),
RegOpt(RegOpt),
Rescue(Rescue),
RescueBody(RescueBody),
Restarg(Restarg),
Retry(Retry),
Return(Return),
SClass(SClass),
Self_(Self_),
Send(Send),
Shadowarg(Shadowarg),
Splat(Splat),
Str(Str),
Super(Super),
Sym(Sym),
True(True),
Undef(Undef),
UnlessGuard(UnlessGuard),
Until(Until),
UntilPost(UntilPost),
When(When),
While(While),
WhilePost(WhilePost),
XHeredoc(XHeredoc),
Xstr(Xstr),
Yield(Yield),
ZSuper(ZSuper),
}
Expand description
Generic combination of all known nodes.
Variants
Alias(Alias)
And(And)
AndAsgn(AndAsgn)
Arg(Arg)
Args(Args)
Array(Array)
ArrayPattern(ArrayPattern)
ArrayPatternWithTail(ArrayPatternWithTail)
BackRef(BackRef)
Begin(Begin)
Block(Block)
Blockarg(Blockarg)
BlockPass(BlockPass)
Break(Break)
Case(Case)
CaseMatch(CaseMatch)
Casgn(Casgn)
Cbase(Cbase)
Class(Class)
Complex(Complex)
Const(Const)
ConstPattern(ConstPattern)
CSend(CSend)
Cvar(Cvar)
Cvasgn(Cvasgn)
Def(Def)
Defined(Defined)
Defs(Defs)
Dstr(Dstr)
Dsym(Dsym)
EFlipFlop(EFlipFlop)
EmptyElse(EmptyElse)
Encoding(Encoding)
Ensure(Ensure)
Erange(Erange)
False(False)
File(File)
FindPattern(FindPattern)
Float(Float)
For(For)
ForwardArg(ForwardArg)
ForwardedArgs(ForwardedArgs)
Gvar(Gvar)
Gvasgn(Gvasgn)
Hash(Hash)
HashPattern(HashPattern)
Heredoc(Heredoc)
If(If)
IfGuard(IfGuard)
IFlipFlop(IFlipFlop)
IfMod(IfMod)
IfTernary(IfTernary)
Index(Index)
IndexAsgn(IndexAsgn)
InPattern(InPattern)
Int(Int)
Irange(Irange)
Ivar(Ivar)
Ivasgn(Ivasgn)
Kwarg(Kwarg)
Kwargs(Kwargs)
KwBegin(KwBegin)
Kwnilarg(Kwnilarg)
Kwoptarg(Kwoptarg)
Kwrestarg(Kwrestarg)
Kwsplat(Kwsplat)
Lambda(Lambda)
Line(Line)
Lvar(Lvar)
Lvasgn(Lvasgn)
Masgn(Masgn)
MatchAlt(MatchAlt)
MatchAs(MatchAs)
MatchCurrentLine(MatchCurrentLine)
MatchNilPattern(MatchNilPattern)
MatchPattern(MatchPattern)
MatchPatternP(MatchPatternP)
MatchRest(MatchRest)
MatchVar(MatchVar)
MatchWithLvasgn(MatchWithLvasgn)
Mlhs(Mlhs)
Module(Module)
Next(Next)
Nil(Nil)
NthRef(NthRef)
Numblock(Numblock)
OpAsgn(OpAsgn)
Optarg(Optarg)
Or(Or)
OrAsgn(OrAsgn)
Pair(Pair)
Pin(Pin)
Postexe(Postexe)
Preexe(Preexe)
Procarg0(Procarg0)
Rational(Rational)
Redo(Redo)
Regexp(Regexp)
RegOpt(RegOpt)
Rescue(Rescue)
RescueBody(RescueBody)
Restarg(Restarg)
Retry(Retry)
Return(Return)
SClass(SClass)
Self_(Self_)
Send(Send)
Shadowarg(Shadowarg)
Splat(Splat)
Str(Str)
Super(Super)
Sym(Sym)
True(True)
Undef(Undef)
UnlessGuard(UnlessGuard)
Until(Until)
UntilPost(UntilPost)
When(When)
While(While)
WhilePost(WhilePost)
XHeredoc(XHeredoc)
Xstr(Xstr)
Yield(Yield)
ZSuper(ZSuper)
Implementations
sourceimpl Node
impl Node
sourcepub fn inspect(&self, indent: usize) -> String
pub fn inspect(&self, indent: usize) -> String
Returs a whitequark/parser -like representation of self
.
Used in tests and example scripts
sourcepub fn expression(&self) -> &Loc
pub fn expression(&self) -> &Loc
Returns location of the full node expression
sourcepub fn str_type(&self) -> &'static str
pub fn str_type(&self) -> &'static str
Returns a whitequark/parser -like node name.
Used in tests and example scripts
sourcepub fn print_with_locs(&self)
pub fn print_with_locs(&self)
Prints itself + location information
Trait Implementations
impl StructuralPartialEq for Node
Auto Trait Implementations
impl RefUnwindSafe for Node
impl Send for Node
impl Sync for Node
impl Unpin for Node
impl UnwindSafe for Node
Blanket Implementations
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