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