Bug #7495 ยป clean_up_rb_interns.patch
array.c | ||
---|---|---|
#include "ruby/encoding.h"
|
||
#include "internal.h"
|
||
#include "probes.h"
|
||
#include "id.h"
|
||
#ifndef ARRAY_DEBUG
|
||
# define NDEBUG
|
||
... | ... | |
if (!NIL_P(result)) return rb_ary_subseq(result, 0, n);
|
||
result = rb_ary_new2(n);
|
||
args[0] = result; args[1] = (VALUE)n;
|
||
if (rb_check_block_call(obj, rb_intern("each"), 0, 0, take_i, (VALUE)args) == Qundef)
|
||
if (rb_check_block_call(obj, idEach, 0, 0, take_i, (VALUE)args) == Qundef)
|
||
Check_Type(obj, T_ARRAY);
|
||
return result;
|
||
}
|
enum.c | ||
---|---|---|
rb_ivar_set(enumerator, rb_intern("chunk_enumerable"), enumerable);
|
||
rb_ivar_set(enumerator, rb_intern("chunk_categorize"), rb_block_proc());
|
||
rb_ivar_set(enumerator, rb_intern("chunk_initial_state"), initial_state);
|
||
rb_block_call(enumerator, rb_intern("initialize"), 0, 0, chunk_i, enumerator);
|
||
rb_block_call(enumerator, idInitialize, 0, 0, chunk_i, enumerator);
|
||
return enumerator;
|
||
}
|
||
... | ... | |
rb_ivar_set(enumerator, rb_intern("slicebefore_sep_pat"), sep_pat);
|
||
}
|
||
rb_ivar_set(enumerator, rb_intern("slicebefore_enumerable"), enumerable);
|
||
rb_block_call(enumerator, rb_intern("initialize"), 0, 0, slicebefore_i, enumerator);
|
||
rb_block_call(enumerator, idInitialize, 0, 0, slicebefore_i, enumerator);
|
||
return enumerator;
|
||
}
|
||
insns.def | ||
---|---|---|
VALUE r;
|
||
args[0] = obj; args[1] = Qfalse;
|
||
r = rb_check_funcall(v, rb_intern("respond_to_missing?"), 2, args);
|
||
r = rb_check_funcall(v, idRespond_to_missing, 2, args);
|
||
if (r != Qundef && RTEST(r))
|
||
expr_type = DEFINED_METHOD;
|
||
}
|
io.c | ||
---|---|---|
#include "ruby/thread.h"
|
||
#include "dln.h"
|
||
#include "internal.h"
|
||
#include "id.h"
|
||
#include <ctype.h>
|
||
#include <errno.h>
|
||
... | ... | |
retry:
|
||
if (!next_argv()) return Qnil;
|
||
if (ARGF_GENERIC_INPUT_P()) {
|
||
line = rb_funcall3(ARGF.current_file, rb_intern("gets"), argc, argv);
|
||
line = rb_funcall3(ARGF.current_file, idGets, argc, argv);
|
||
}
|
||
else {
|
||
if (argc == 0 && rb_rs == rb_default_rs) {
|
||
... | ... | |
if (recv == argf) {
|
||
return argf_gets(argc, argv, argf);
|
||
}
|
||
return rb_funcall2(argf, rb_intern("gets"), argc, argv);
|
||
return rb_funcall2(argf, idGets, argc, argv);
|
||
}
|
||
/*
|
numeric.c | ||
---|---|---|
#include "ruby/encoding.h"
|
||
#include "ruby/util.h"
|
||
#include "internal.h"
|
||
#include "id.h"
|
||
#include <ctype.h>
|
||
#include <math.h>
|
||
#include <stdio.h>
|
||
... | ... | |
ID op;
|
||
/* If 10**N / 2 > num, then return 0 */
|
||
/* We have log_256(10) > 0.415241 and log_256(1/2) = -0.125, so */
|
||
bytes = FIXNUM_P(num) ? sizeof(long) : rb_funcall(num, rb_intern("size"), 0);
|
||
bytes = FIXNUM_P(num) ? sizeof(long) : rb_funcall(num, idSize, 0);
|
||
if (-0.415241 * ndigits - 0.125 > bytes ) {
|
||
return INT2FIX(0);
|
||
}
|
parse.y | ||
---|---|---|
m->nd_next = block_append(
|
||
NEW_IF(
|
||
NEW_NODE(NODE_AND,
|
||
NEW_CALL(NEW_CALL(NEW_DVAR(id), rb_intern("length"), 0),
|
||
rb_intern("=="), one),
|
||
NEW_CALL(NEW_CALL(NEW_DVAR(id), rb_intern("[]"), zero),
|
||
NEW_CALL(NEW_CALL(NEW_DVAR(id), idLength, 0),
|
||
idEq, one),
|
||
NEW_CALL(NEW_CALL(NEW_DVAR(id), idAREF, zero),
|
||
rb_intern("kind_of?"), NEW_LIST(NEW_LIT(rb_cArray))),
|
||
0),
|
||
NEW_DASGN_CURR(id,
|
||
NEW_CALL(NEW_DVAR(id), rb_intern("[]"), zero)),
|
||
NEW_CALL(NEW_DVAR(id), idAREF, zero)),
|
||
0),
|
||
node_assign($2, NEW_DVAR(id)));
|
||
process.c | ||
---|---|---|
VALUE env = rb_const_get(rb_cObject, rb_intern("ENV"));
|
||
if (RTEST(env)) {
|
||
VALUE ary = hide_obj(rb_ary_new());
|
||
rb_block_call(env, rb_intern("each"), 0, 0, save_env_i,
|
||
rb_block_call(env, idEach, 0, 0, save_env_i,
|
||
(VALUE)ary);
|
||
sargp->env_modification = ary;
|
||
}
|
range.c | ||
---|---|---|
#include "ruby/ruby.h"
|
||
#include "ruby/encoding.h"
|
||
#include "internal.h"
|
||
#include "id.h"
|
||
#ifdef HAVE_FLOAT_H
|
||
#include <float.h>
|
||
... | ... | |
rb_scan_args(argc, argv, "21", &beg, &end, &flags);
|
||
/* Ranges are immutable, so that they should be initialized only once. */
|
||
if (RANGE_EXCL(range) != Qnil) {
|
||
rb_name_error(rb_intern("initialize"), "`initialize' called twice");
|
||
rb_name_error(idInitialize, "`initialize' called twice");
|
||
}
|
||
range_init(range, beg, end, RTEST(flags));
|
||
return Qnil;
|
||
... | ... | |
else if (rb_obj_is_kind_of(b, rb_cNumeric) ||
|
||
!NIL_P(rb_check_to_integer(b, "to_int")) ||
|
||
!NIL_P(rb_check_to_integer(e, "to_int"))) {
|
||
ID op = EXCL(range) ? '<' : rb_intern("<=");
|
||
ID op = EXCL(range) ? '<' : idLE;
|
||
VALUE v = b;
|
||
int i = 0;
|
||
... | ... | |
rb_scan_args(argc, argv, "1", &n);
|
||
ary[0] = n;
|
||
ary[1] = rb_ary_new2(NUM2LONG(n));
|
||
rb_block_call(range, rb_intern("each"), 0, 0, first_i, (VALUE)ary);
|
||
rb_block_call(range, idEach, 0, 0, first_i, (VALUE)ary);
|
||
return ary[1];
|
||
}
|