Struct lib_ruby_parser::nodes::Defs [−][src]
#[repr(C)]pub struct Defs { pub definee: Box<Node>, pub name: String, pub args: Option<Box<Node>>, pub body: Option<Box<Node>>, pub keyword_l: Loc, pub operator_l: Loc, pub name_l: Loc, pub assignment_l: Option<Loc>, pub end_l: Option<Loc>, pub expression_l: Loc, }
Expand description
Represents a singleton method definition (i.e. def self.foo; end
)
Fields
definee: Box<Node>
Definee of a method definition, Lvar("x")
for `def x.foo; end
name: String
Name of the method, String("foo")
for def x.foo; end
args: Option<Box<Node>>
Arguments of a method, None
if there’s no arguments.
All information about parentheses around arguments is stored in this node.
body: Option<Box<Node>>
Body of the method, None
if there’s no body.
keyword_l: Loc
Location of the def
keyword
def self.foo; end
~~~
operator_l: Loc
Location of the .
def self.foo; end
~
name_l: Loc
Location of the method name
def self.foo; end
~~~
assignment_l: Option<Loc>
Location of the =
operator for endless method definition
def self.foo() = 42
~
None
for regular method definition
end_l: Option<Loc>
Location of the end
keyword
def self.foo; end
~~~
None
for endless method definition
expression_l: Loc
Location of the full expression
def self.foo; end
~~~~~~~~~~~~~~~~~
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Defs
impl UnwindSafe for Defs
Blanket Implementations
Mutably borrows from an owned value. Read more