Struct lib_ruby_parser::nodes::CSend
source · #[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§
source§impl PartialEq for CSend
impl PartialEq for CSend
impl StructuralPartialEq for CSend
Auto Trait Implementations§
impl Freeze for CSend
impl RefUnwindSafe for CSend
impl Send for CSend
impl Sync for CSend
impl Unpin for CSend
impl UnwindSafe for CSend
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