#[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: StringName 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: LocLocation of the def keyword
def self.foo; end
~~~operator_l: LocLocation of the .
def self.foo; end
~name_l: LocLocation 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: LocLocation of the full expression
def self.foo; end
~~~~~~~~~~~~~~~~~Trait Implementations§
impl StructuralPartialEq for Defs
Auto Trait Implementations§
impl Freeze for Defs
impl RefUnwindSafe for Defs
impl Send for Defs
impl Sync for Defs
impl Unpin for Defs
impl UnwindSafe for Defs
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