Struct lib_ruby_parser::nodes::CSend [−][src]
#[repr(C)]pub struct CSend { pub recv: Box<Node>, pub method_name: String, pub args: Vec<Node>, pub dot_l: Loc, pub selector_l: Option<Loc>, pub begin_l: Option<Loc>, pub end_l: Option<Loc>, pub operator_l: Option<Loc>, pub expression_l: Loc, }
Expand description
Represents conditional method call using &.
operator
Fields
recv: Box<Node>
Receiver of the method call, Int("1")
for 1&.foo
method_name: String
Name of the method, String("foo")
for 1&.foo
args: Vec<Node>
List of arguments
foo&.bar(42)
# and also setters like
foo&.bar = 42
dot_l: Loc
Location of the &.
operator
foo&.bar
~~
selector_l: Option<Loc>
Location of the method name
foo&.bar(42)
~~~
None
in a very special case when method call is implicit (i.e. foo&.()
)
begin_l: Option<Loc>
Location of the open parenthesis
foo&.bar(42)
~
None
if there are no parentheses
end_l: Option<Loc>
Location of the closing parenthesis
foo&.bar(42)
~
None
if there are no parentheses
operator_l: Option<Loc>
Location of the operator if CSend
is a part of assignment like
foo&.bar = 1
~
None
for a regular call.
expression_l: Loc
Location of the full expression
foo&.bar(42)
~~~~~~~~~~~~
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for CSend
impl UnwindSafe for CSend
Blanket Implementations
Mutably borrows from an owned value. Read more