Class: Node::BMETHOD

Inherits:
Node show all
Defined in:
lib/internal/method/signature/node.rb,
ext/internal/node/nodeinfo.c,
ext/internal/node/nodeinfo.c,
ext/cached/ruby-1.8.4/internal/node/nodeinfo.c,
ext/cached/ruby-1.8.4/internal/node/nodeinfo.c,
ext/cached/ruby-1.8.5/internal/node/nodeinfo.c,
ext/cached/ruby-1.8.5/internal/node/nodeinfo.c,
ext/cached/ruby-1.8.6/internal/node/nodeinfo.c,
ext/cached/ruby-1.8.6/internal/node/nodeinfo.c,
ext/cached/ruby-1.8.7/internal/node/nodeinfo.c,
ext/cached/ruby-1.8.7/internal/node/nodeinfo.c,
ext/cached/ruby-1.9.1/internal/node/nodeinfo.c,
ext/cached/ruby-1.9.1/internal/node/nodeinfo.c,
ext/cached/ruby-1.9.2/internal/node/nodeinfo.c,
ext/cached/ruby-1.9.2/internal/node/nodeinfo.c,
ext/cached/ruby-1.9.3/internal/node/nodeinfo.c,
ext/cached/ruby-1.9.3/internal/node/nodeinfo.c

Overview

A placeholder for a method defined using define_method, e.g.:

define_method(:foo) {
  ...
}

See also DMETHOD.

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Node

#[], #_dump, _load, #address, #as_code, #as_expression, #as_paren_expression, #bytecode_compile, compile_string, define_code, define_expression, #eval, #flags, #inspect, #members, #nd_file, #nd_line, #nd_type, #obfusc, #pretty_print, #swap, #to_a, #tree, type

Class Method Details

.membersArray

Return an array of strings containing the names of the node class’s members.

Returns:

  • (Array)


2793
2794
2795
2796
# File 'ext/internal/node/nodeinfo.c', line 2793

VALUE node_s_members(VALUE klass)
{
  return rb_iv_get(klass, "__member__");
}

Instance Method Details

#args_nodeObject



91
92
93
# File 'lib/internal/method/signature/node.rb', line 91

def args_node
  raise "TODO: Not implemented yet"
end

#argument_namesObject



83
84
85
# File 'lib/internal/method/signature/node.rb', line 83

def argument_names
  return self.cval.arguments.names
end

#argumentsObject



87
88
89
# File 'lib/internal/method/signature/node.rb', line 87

def arguments
  return self.cval.arguments
end

#block_argObject



99
100
101
# File 'lib/internal/method/signature/node.rb', line 99

def block_arg
  raise "TODO: Not implemented yet"
end

#cvalObject

Return the Node’s cval member. The return type is either a Node or an Object.



2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
# File 'ext/internal/node/nodeinfo.c', line 2183

static VALUE node_cval(VALUE self)
{
  NODE * n;
  Data_Get_Struct(self, NODE, n);

  if(TYPE(n->nd_cval) == T_NODE)
  {
    if(0 && nd_type(n) == NODE_OP_ASGN2)
    {
      return wrap_node_as(
        (NODE *)n->nd_cval,
        rb_cNodeSubclass[NODE_OP_ASGN2_ARG]);
    }
    else
    {
      return wrap_node((NODE *)n->nd_cval);
    }
  }
  else
  {
    return (VALUE)n->nd_cval;
  }
}

#local_varsObject



79
80
81
# File 'lib/internal/method/signature/node.rb', line 79

def local_vars
  raise "TODO: Not implemented yet"
end

#rest_argObject



95
96
97
# File 'lib/internal/method/signature/node.rb', line 95

def rest_arg
  raise "TODO: Not implemented yet"
end

#set_optional_args(args, args_node, names) ⇒ Object



103
104
105
# File 'lib/internal/method/signature/node.rb', line 103

def set_optional_args(args, args_node, names)
  raise "TODO: Not implemented yet"
end