Method: PLine::MethodInfo#initialize

Defined in:
ext/pline/minfo.c

#initialize(iseq, obj, mid, singleton_p) ⇒ Object



99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
# File 'ext/pline/minfo.c', line 99

static VALUE minfo_m_init(VALUE self, VALUE iseq, VALUE obj, VALUE mid, VALUE singleton_p)
{
  pline_method_info_t *m = DATA_PTR(self);
  VALUE spath, sline, eline;

  if (rb_obj_class(mid) != rb_cSymbol ||
      rb_obj_class(iseq) != rb_cISeq) {
    rb_raise(rb_eArgError, "invalid arguments");
  }

  m->obj = obj;
  m->mid = mid;
  m->spath = minfo_spath_from_iseq(iseq);
  m->sline = minfo_sline_from_iseq(iseq);
  m->eline = minfo_eline_from_iseq(iseq);
  m->singleton_p = singleton_p;

  return Qnil;
}