Prism Ruby parser
|
CallNode. More...
#include <ast.h>
Data Fields | |
pm_node_t | base |
The embedded base node. | |
struct pm_node * | receiver |
CallNode::receiver. | |
pm_location_t | call_operator_loc |
CallNode::call_operator_loc. | |
pm_constant_id_t | name |
CallNode::name. | |
pm_location_t | message_loc |
CallNode::message_loc. | |
pm_location_t | opening_loc |
CallNode::opening_loc. | |
struct pm_arguments_node * | arguments |
CallNode::arguments. | |
pm_location_t | closing_loc |
CallNode::closing_loc. | |
struct pm_node * | block |
CallNode::block. | |
Data Fields inherited from pm_node | |
pm_node_type_t | type |
This represents the type of the node. | |
pm_node_flags_t | flags |
This represents any flags on the node. | |
uint32_t | node_id |
The unique identifier for this node, which is deterministic based on the source. | |
pm_location_t | location |
This is the location of the node in the source. | |
CallNode.
Represents a method call, in all of the various forms that can take.
foo ^^^ foo() ^^^^^ +foo ^^^^ foo + bar ^^^^^^^^^ foo.bar ^^^^^^^ foo&.bar ^^^^^^^^
Type: PM_CALL_NODE
Flags (pm_call_node_flags):
struct pm_node* pm_call_node::receiver |
CallNode::receiver.
The object that the method is being called on. This can be either nil
or any non-void expression.
foo.bar ^^^ +foo ^^^ foo + bar ^^^
pm_location_t pm_call_node::call_operator_loc |
CallNode::call_operator_loc.
Represents the location of the call operator.
foo.bar ^ foo&.bar ^^
pm_constant_id_t pm_call_node::name |
CallNode::name.
Represents the name of the method being called.
foo.bar # name `:foo` ^^^
pm_location_t pm_call_node::message_loc |
CallNode::message_loc.
Represents the location of the message.
foo.bar ^^^
pm_location_t pm_call_node::opening_loc |
CallNode::opening_loc.
Represents the location of the left parenthesis. foo(bar) ^
struct pm_arguments_node* pm_call_node::arguments |
CallNode::arguments.
Represents the arguments to the method call. These can be any non-void expressions.
foo(bar) ^^^
pm_location_t pm_call_node::closing_loc |
CallNode::closing_loc.
Represents the location of the right parenthesis.
foo(bar) ^
struct pm_node* pm_call_node::block |
CallNode::block.
Represents the block that is being passed to the method.
foo { |a| a } ^^^^^^^^^