mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
add experimental API.
* iseq.c (rb_iseq_code_range): added to access iseq's code range. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
05d1d29d1f
commit
e9a184ed63
2 changed files with 10 additions and 0 deletions
9
iseq.c
9
iseq.c
|
@ -771,6 +771,15 @@ rb_iseq_method_name(const rb_iseq_t *iseq)
|
|||
}
|
||||
}
|
||||
|
||||
void
|
||||
rb_iseq_code_range(const rb_iseq_t *iseq, int *first_lineno, int *first_column, int *last_lineno, int *last_column)
|
||||
{
|
||||
if (first_lineno) *first_lineno = iseq->body->location.code_range.first_loc.lineno;
|
||||
if (first_column) *first_column = iseq->body->location.code_range.first_loc.column;
|
||||
if (last_lineno) *last_lineno = iseq->body->location.code_range.last_loc.lineno;;
|
||||
if (last_column) *last_column = iseq->body->location.code_range.last_loc.column;
|
||||
}
|
||||
|
||||
VALUE
|
||||
rb_iseq_coverage(const rb_iseq_t *iseq)
|
||||
{
|
||||
|
|
1
iseq.h
1
iseq.h
|
@ -189,6 +189,7 @@ VALUE rb_iseq_label(const rb_iseq_t *iseq);
|
|||
VALUE rb_iseq_base_label(const rb_iseq_t *iseq);
|
||||
VALUE rb_iseq_first_lineno(const rb_iseq_t *iseq);
|
||||
VALUE rb_iseq_method_name(const rb_iseq_t *iseq);
|
||||
void rb_iseq_code_range(const rb_iseq_t *iseq, int *first_lineno, int *first_column, int *last_lineno, int *last_column);
|
||||
|
||||
/* proc.c */
|
||||
const rb_iseq_t *rb_method_iseq(VALUE body);
|
||||
|
|
Loading…
Reference in a new issue