Enum lib_ruby_parser::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§
source§impl Node
impl Node
sourcepub fn inspect(&self, indent: usize) -> String
pub fn inspect(&self, indent: usize) -> String
Returns 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§
source§impl PartialEq for Node
impl PartialEq for Node
impl StructuralPartialEq for Node
Auto Trait Implementations§
impl Freeze for Node
impl RefUnwindSafe for Node
impl Send for Node
impl Sync for Node
impl Unpin for Node
impl UnwindSafe for Node
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