In Files

    • ast.c

    Parent

    Class/Module Index [+]

    Quicksearch
    No matching classes.

    RubyVM::AbstractSyntaxTree::Node

    instances are created by parse methods in .

    Public Instance Methods

    children → array click to toggle source

    Returns AST nodes under this one. Each kind of node has different children, depending on what kind of node it is.

    The returned array may contain other nodes or nil.

     static VALUE
    rb_ast_node_children(VALUE self)
    {
     struct ASTNodeData *data;
     TypedData_Get_Struct(self, struct ASTNodeData, &rb_node_type, data);
     return node_children(data->ast, data->node);
    }
     
    first_column → integer click to toggle source

    The column number in the source code where this AST's text began.

     static VALUE
    rb_ast_node_first_column(VALUE self)
    {
     struct ASTNodeData *data;
     TypedData_Get_Struct(self, struct ASTNodeData, &rb_node_type, data);
     return INT2NUM(nd_first_column(data->node));
    }
     
    first_lineno → integer click to toggle source

    The line number in the source code where this AST's text began.

     static VALUE
    rb_ast_node_first_lineno(VALUE self)
    {
     struct ASTNodeData *data;
     TypedData_Get_Struct(self, struct ASTNodeData, &rb_node_type, data);
     return INT2NUM(nd_first_lineno(data->node));
    }
     
    inspect → string click to toggle source

    Returns debugging information about this node as a string.

     static VALUE
    rb_ast_node_inspect(VALUE self)
    {
     VALUE str;
     VALUE cname;
     struct ASTNodeData *data;
     TypedData_Get_Struct(self, struct ASTNodeData, &rb_node_type, data);
     cname = rb_class_path(rb_obj_class(self));
     str = rb_str_new2("#<");
     rb_str_append(str, cname);
     rb_str_catf(str, ":%s@%d:%d-%d:%d>",
     node_type_to_str(data->node),
     nd_first_lineno(data->node), nd_first_column(data->node),
     nd_last_lineno(data->node), nd_last_column(data->node));
     return str;
    }
     
    last_column → integer click to toggle source

    The column number in the source code where this AST's text ended.

     static VALUE
    rb_ast_node_last_column(VALUE self)
    {
     struct ASTNodeData *data;
     TypedData_Get_Struct(self, struct ASTNodeData, &rb_node_type, data);
     return INT2NUM(nd_last_column(data->node));
    }
     
    last_lineno → integer click to toggle source

    The line number in the source code where this AST's text ended.

     static VALUE
    rb_ast_node_last_lineno(VALUE self)
    {
     struct ASTNodeData *data;
     TypedData_Get_Struct(self, struct ASTNodeData, &rb_node_type, data);
     return INT2NUM(nd_last_lineno(data->node));
    }
     
    type → symbol click to toggle source

    Returns the type of this node as a symbol.

    root = RubyVM::AbstractSyntaxTree.parse("x = 1 + 2")
    root.type # => :SCOPE
    call = root.children[2]
    call.type # => :OPCALL
    
     static VALUE
    rb_ast_node_type(VALUE self)
    {
     struct ASTNodeData *data;
     TypedData_Get_Struct(self, struct ASTNodeData, &rb_node_type, data);
     return rb_sym_intern_ascii_cstr(node_type_to_str(data->node));
    }
     

    This page was generated for Ruby

    is a service of and , purveyors of fine dance noise.

    Generated with Ruby-doc Rdoc Generator 0.44.0.