ext: prefer RB_TYPE_P over comparison TYPE with constants

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2014-08-03 01:56:01 +00:00
parent fdfb939d72
commit 1d670ab0f0
9 changed files with 75 additions and 75 deletions

View File

@ -304,7 +304,7 @@ union DateData {
inline static VALUE inline static VALUE
canon(VALUE x) canon(VALUE x)
{ {
if (TYPE(x) == T_RATIONAL) { if (RB_TYPE_P(x, T_RATIONAL)) {
VALUE den = rb_rational_den(x); VALUE den = rb_rational_den(x);
if (FIXNUM_P(den) && FIX2LONG(den) == 1) if (FIXNUM_P(den) && FIX2LONG(den) == 1)
return rb_rational_num(x); return rb_rational_num(x);
@ -5843,7 +5843,7 @@ minus_dd(VALUE self, VALUE other)
if (f_nonzero_p(sf)) if (f_nonzero_p(sf))
r = f_add(r, ns_to_day(sf)); r = f_add(r, ns_to_day(sf));
if (TYPE(r) == T_RATIONAL) if (RB_TYPE_P(r, T_RATIONAL))
return r; return r;
return rb_rational_new1(r); return rb_rational_new1(r);
} }
@ -7048,7 +7048,7 @@ d_lite_marshal_load(VALUE self, VALUE a)
rb_check_frozen(self); rb_check_frozen(self);
rb_check_trusted(self); rb_check_trusted(self);
if (TYPE(a) != T_ARRAY) if (!RB_TYPE_P(a, T_ARRAY))
rb_raise(rb_eTypeError, "expected an array"); rb_raise(rb_eTypeError, "expected an array");
switch (RARRAY_LEN(a)) { switch (RARRAY_LEN(a)) {

View File

@ -70,7 +70,7 @@ s3e(VALUE hash, VALUE y, VALUE m, VALUE d, int bc)
{ {
VALUE c = Qnil; VALUE c = Qnil;
if (TYPE(m) != T_STRING) if (!RB_TYPE_P(m, T_STRING))
m = f_to_s(m); m = f_to_s(m);
if (!NIL_P(y) && !NIL_P(m) && NIL_P(d)) { if (!NIL_P(y) && !NIL_P(m) && NIL_P(d)) {
@ -585,12 +585,12 @@ date_zone_to_diff(VALUE str)
if (NIL_P(hour)) if (NIL_P(hour))
offset = INT2FIX(0); offset = INT2FIX(0);
else { else {
if (TYPE(hour) == T_STRING) if (RB_TYPE_P(hour, T_STRING))
hour = str2num(hour); hour = str2num(hour);
offset = f_mul(hour, INT2FIX(3600)); offset = f_mul(hour, INT2FIX(3600));
} }
if (!NIL_P(min)) { if (!NIL_P(min)) {
if (TYPE(min) == T_STRING) if (RB_TYPE_P(min, T_STRING))
min = str2num(min); min = str2num(min);
offset = f_add(offset, f_mul(min, INT2FIX(60))); offset = f_add(offset, f_mul(min, INT2FIX(60)));
} }

View File

@ -18,7 +18,7 @@ ossl_obj2bio(VALUE obj)
{ {
BIO *bio; BIO *bio;
if (TYPE(obj) == T_FILE) { if (RB_TYPE_P(obj, T_FILE)) {
rb_io_t *fptr; rb_io_t *fptr;
FILE *fp; FILE *fp;
int fd; int fd;

View File

@ -38,7 +38,7 @@ GetDigestPtr(VALUE obj)
const EVP_MD *md; const EVP_MD *md;
ASN1_OBJECT *oid = NULL; ASN1_OBJECT *oid = NULL;
if (TYPE(obj) == T_STRING) { if (RB_TYPE_P(obj, T_STRING)) {
const char *name = StringValueCStr(obj); const char *name = StringValueCStr(obj);
md = EVP_get_digestbyname(name); md = EVP_get_digestbyname(name);

View File

@ -376,7 +376,7 @@ ossl_pkcs7_sym2typeid(VALUE sym)
{ NULL, 0 }, { NULL, 0 },
}; };
if(TYPE(sym) == T_SYMBOL) s = rb_id2name(SYM2ID(sym)); if (RB_TYPE_P(sym, T_SYMBOL)) s = rb_id2name(SYM2ID(sym));
else s = StringValuePtr(sym); else s = StringValuePtr(sym);
for(i = 0; i < numberof(p7_type_tab); i++){ for(i = 0; i < numberof(p7_type_tab); i++){
if(p7_type_tab[i].name == NULL) if(p7_type_tab[i].name == NULL)

View File

@ -190,7 +190,7 @@ ossl_sslctx_set_ssl_version(VALUE self, VALUE ssl_method)
int i; int i;
SSL_CTX *ctx; SSL_CTX *ctx;
if(TYPE(ssl_method) == T_SYMBOL) if (RB_TYPE_P(ssl_method, T_SYMBOL))
s = rb_id2name(SYM2ID(ssl_method)); s = rb_id2name(SYM2ID(ssl_method));
else else
s = StringValuePtr(ssl_method); s = StringValuePtr(ssl_method);
@ -716,7 +716,7 @@ ossl_sslctx_setup(VALUE self)
val = ossl_sslctx_get_client_ca(self); val = ossl_sslctx_get_client_ca(self);
if(!NIL_P(val)){ if(!NIL_P(val)){
if(TYPE(val) == T_ARRAY){ if (RB_TYPE_P(val, T_ARRAY)) {
for(i = 0; i < RARRAY_LEN(val); i++){ for(i = 0; i < RARRAY_LEN(val); i++){
client_ca = GetX509CertPtr(RARRAY_PTR(val)[i]); client_ca = GetX509CertPtr(RARRAY_PTR(val)[i]);
if (!SSL_CTX_add_client_CA(ctx, client_ca)){ if (!SSL_CTX_add_client_CA(ctx, client_ca)){
@ -882,11 +882,11 @@ ossl_sslctx_set_ciphers(VALUE self, VALUE v)
rb_check_frozen(self); rb_check_frozen(self);
if (NIL_P(v)) if (NIL_P(v))
return v; return v;
else if (TYPE(v) == T_ARRAY) { else if (RB_TYPE_P(v, T_ARRAY)) {
str = rb_str_new(0, 0); str = rb_str_new(0, 0);
for (i = 0; i < RARRAY_LEN(v); i++) { for (i = 0; i < RARRAY_LEN(v); i++) {
elem = rb_ary_entry(v, i); elem = rb_ary_entry(v, i);
if (TYPE(elem) == T_ARRAY) elem = rb_ary_entry(elem, 0); if (RB_TYPE_P(elem, T_ARRAY)) elem = rb_ary_entry(elem, 0);
elem = rb_String(elem); elem = rb_String(elem);
rb_str_append(str, elem); rb_str_append(str, elem);
if (i < RARRAY_LEN(v)-1) rb_str_cat2(str, ":"); if (i < RARRAY_LEN(v)-1) rb_str_cat2(str, ":");

View File

@ -3110,7 +3110,7 @@ ip_set_exc_message(interp, exc)
} }
if (NIL_P(enc)) { if (NIL_P(enc)) {
encoding = (Tcl_Encoding)NULL; encoding = (Tcl_Encoding)NULL;
} else if (TYPE(enc) == T_STRING) { } else if (RB_TYPE_P(enc, T_STRING)) {
/* encoding = Tcl_GetEncoding(interp, RSTRING_PTR(enc)); */ /* encoding = Tcl_GetEncoding(interp, RSTRING_PTR(enc)); */
encoding = Tcl_GetEncoding((Tcl_Interp*)NULL, RSTRING_PTR(enc)); encoding = Tcl_GetEncoding((Tcl_Interp*)NULL, RSTRING_PTR(enc));
} else { } else {
@ -3320,7 +3320,7 @@ tcl_protect_core(interp, proc, data) /* should not raise exception */
if (rb_obj_is_kind_of(exc, eLocalJumpError)) { if (rb_obj_is_kind_of(exc, eLocalJumpError)) {
VALUE reason = rb_ivar_get(exc, ID_at_reason); VALUE reason = rb_ivar_get(exc, ID_at_reason);
if (TYPE(reason) == T_SYMBOL) { if (RB_TYPE_P(reason, T_SYMBOL)) {
if (SYM2ID(reason) == ID_return) if (SYM2ID(reason) == ID_return)
return TCL_RETURN; return TCL_RETURN;
@ -7949,7 +7949,7 @@ lib_toUTF8_core(ip_obj, src, encodename)
rb_thread_critical = Qtrue; rb_thread_critical = Qtrue;
if (NIL_P(encodename)) { if (NIL_P(encodename)) {
if (TYPE(str) == T_STRING) { if (RB_TYPE_P(str, T_STRING)) {
volatile VALUE enc; volatile VALUE enc;
#ifdef HAVE_RUBY_ENCODING_H #ifdef HAVE_RUBY_ENCODING_H
@ -8127,7 +8127,7 @@ lib_fromUTF8_core(ip_obj, src, encodename)
if (NIL_P(encodename)) { if (NIL_P(encodename)) {
volatile VALUE enc; volatile VALUE enc;
if (TYPE(str) == T_STRING) { if (RB_TYPE_P(str, T_STRING)) {
enc = rb_attr_get(str, ID_at_enc); enc = rb_attr_get(str, ID_at_enc);
if (!NIL_P(enc)) { if (!NIL_P(enc)) {
StringValue(enc); StringValue(enc);

View File

@ -312,7 +312,7 @@ ary2list(ary, enc_flag, self)
if (NIL_P(enc_flag)) { if (NIL_P(enc_flag)) {
dst_enc = sys_enc; dst_enc = sys_enc;
req_chk_flag = 1; req_chk_flag = 1;
} else if (TYPE(enc_flag) == T_TRUE || TYPE(enc_flag) == T_FALSE) { } else if (enc_flag == Qtrue || enc_flag == Qfalse) {
dst_enc = enc_flag; dst_enc = enc_flag;
req_chk_flag = 0; req_chk_flag = 0;
} else { } else {
@ -323,7 +323,7 @@ ary2list(ary, enc_flag, self)
/* size = RARRAY_LEN(ary); */ /* size = RARRAY_LEN(ary); */
size = 0; size = 0;
for(idx = 0; idx < RARRAY_LEN(ary); idx++) { for(idx = 0; idx < RARRAY_LEN(ary); idx++) {
if (TYPE(RARRAY_PTR(ary)[idx]) == T_HASH) { if (RB_TYPE_P(RARRAY_PTR(ary)[idx], T_HASH)) {
size += 2 * RHASH_SIZE(RARRAY_PTR(ary)[idx]); size += 2 * RHASH_SIZE(RARRAY_PTR(ary)[idx]);
} else { } else {
size++; size++;
@ -433,7 +433,7 @@ ary2list(ary, enc_flag, self)
RARRAY_PTR(dst)[idx] = str_val; RARRAY_PTR(dst)[idx] = str_val;
} }
val = rb_apply(cTclTkLib, ID_merge_tklist, dst); val = rb_apply(cTclTkLib, ID_merge_tklist, dst);
if (TYPE(dst_enc) == T_STRING) { if (RB_TYPE_P(dst_enc, T_STRING)) {
val = rb_funcall(cTclTkLib, ID_fromUTF8, 2, val, dst_enc); val = rb_funcall(cTclTkLib, ID_fromUTF8, 2, val, dst_enc);
rb_ivar_set(val, ID_at_enc, dst_enc); rb_ivar_set(val, ID_at_enc, dst_enc);
} else { } else {
@ -466,7 +466,7 @@ ary2list2(ary, enc_flag, self)
if (NIL_P(enc_flag)) { if (NIL_P(enc_flag)) {
dst_enc = sys_enc; dst_enc = sys_enc;
req_chk_flag = 1; req_chk_flag = 1;
} else if (TYPE(enc_flag) == T_TRUE || TYPE(enc_flag) == T_FALSE) { } else if (enc_flag == Qtrue || enc_flag == Qfalse) {
dst_enc = enc_flag; dst_enc = enc_flag;
req_chk_flag = 0; req_chk_flag = 0;
} else { } else {
@ -527,7 +527,7 @@ ary2list2(ary, enc_flag, self)
RARRAY_PTR(dst)[idx] = str_val; RARRAY_PTR(dst)[idx] = str_val;
} }
val = rb_apply(cTclTkLib, ID_merge_tklist, dst); val = rb_apply(cTclTkLib, ID_merge_tklist, dst);
if (TYPE(dst_enc) == T_STRING) { if (RB_TYPE_P(dst_enc, T_STRING)) {
val = rb_funcall(cTclTkLib, ID_fromUTF8, 2, val, dst_enc); val = rb_funcall(cTclTkLib, ID_fromUTF8, 2, val, dst_enc);
rb_ivar_set(val, ID_at_enc, dst_enc); rb_ivar_set(val, ID_at_enc, dst_enc);
} else { } else {
@ -561,7 +561,7 @@ assoc2kv(assoc, ary, self)
for(i = 0; i < len; i++) { for(i = 0; i < len; i++) {
pair = RARRAY_PTR(assoc)[i]; pair = RARRAY_PTR(assoc)[i];
if (TYPE(pair) != T_ARRAY) { if (!RB_TYPE_P(pair, T_ARRAY)) {
rb_ary_push(dst, key2keyname(pair)); rb_ary_push(dst, key2keyname(pair));
continue; continue;
} }
@ -609,7 +609,7 @@ assoc2kv_enc(assoc, ary, self)
for(i = 0; i < len; i++) { for(i = 0; i < len; i++) {
pair = RARRAY_PTR(assoc)[i]; pair = RARRAY_PTR(assoc)[i];
if (TYPE(pair) != T_ARRAY) { if (!RB_TYPE_P(pair, T_ARRAY)) {
rb_ary_push(dst, key2keyname(pair)); rb_ary_push(dst, key2keyname(pair));
continue; continue;
} }
@ -950,7 +950,7 @@ tk_conv_args(argc, argv, self)
old_gc = rb_gc_disable(); old_gc = rb_gc_disable();
for(size = 0, idx = 2; idx < argc; idx++) { for(size = 0, idx = 2; idx < argc; idx++) {
if (TYPE(argv[idx]) == T_HASH) { if (RB_TYPE_P(argv[idx], T_HASH)) {
size += 2 * RHASH_SIZE(argv[idx]); size += 2 * RHASH_SIZE(argv[idx]);
} else { } else {
size++; size++;
@ -959,7 +959,7 @@ tk_conv_args(argc, argv, self)
/* dst = rb_ary_new2(argc - 2); */ /* dst = rb_ary_new2(argc - 2); */
dst = rb_ary_new2(size); dst = rb_ary_new2(size);
for(idx = 2; idx < argc; idx++) { for(idx = 2; idx < argc; idx++) {
if (TYPE(argv[idx]) == T_HASH) { if (RB_TYPE_P(argv[idx], T_HASH)) {
if (RTEST(argv[1])) { if (RTEST(argv[1])) {
hash2kv_enc(argv[idx], dst, self); hash2kv_enc(argv[idx], dst, self);
} else { } else {
@ -984,7 +984,7 @@ tcl2rb_bool(self, value)
VALUE self; VALUE self;
VALUE value; VALUE value;
{ {
if (TYPE(value) == T_FIXNUM) { if (RB_TYPE_P(value, T_FIXNUM)) {
if (NUM2INT(value) == 0) { if (NUM2INT(value) == 0) {
return Qfalse; return Qfalse;
} else { } else {
@ -992,7 +992,7 @@ tcl2rb_bool(self, value)
} }
} }
if (TYPE(value) == T_TRUE || TYPE(value) == T_FALSE) { if (value == Qtrue || value == Qfalse) {
return value; return value;
} }
@ -1281,7 +1281,7 @@ cbsubst_def_attr_aliases(self, tbl)
{ {
struct cbsubst_info *inf; struct cbsubst_info *inf;
if (TYPE(tbl) != T_HASH) { if (!RB_TYPE_P(tbl, T_HASH)) {
rb_raise(rb_eArgError, "expected a Hash"); rb_raise(rb_eArgError, "expected a Hash");
} }
@ -1306,7 +1306,7 @@ cbsubst_sym_to_subst(self, sym)
ID id; ID id;
volatile VALUE ret; volatile VALUE ret;
if (TYPE(sym) != T_SYMBOL) return sym; if (!RB_TYPE_P(sym, T_SYMBOL)) return sym;
Data_Get_Struct(rb_const_get(self, ID_SUBST_INFO), Data_Get_Struct(rb_const_get(self, ID_SUBST_INFO),
struct cbsubst_info, inf); struct cbsubst_info, inf);
@ -1556,14 +1556,14 @@ cbsubst_table_setup(argc, argv, self)
len = RARRAY_LEN(key_inf); len = RARRAY_LEN(key_inf);
for(idx = 0; idx < len; idx++) { for(idx = 0; idx < len; idx++) {
inf = RARRAY_PTR(key_inf)[idx]; inf = RARRAY_PTR(key_inf)[idx];
if (TYPE(inf) != T_ARRAY) continue; if (!RB_TYPE_P(inf, T_ARRAY)) continue;
if (TYPE(RARRAY_PTR(inf)[0]) == T_STRING) { if (RB_TYPE_P(RARRAY_PTR(inf)[0], T_STRING)) {
chr = *(RSTRING_PTR(RARRAY_PTR(inf)[0])); chr = *(RSTRING_PTR(RARRAY_PTR(inf)[0]));
} else { } else {
chr = NUM2CHR(RARRAY_PTR(inf)[0]); chr = NUM2CHR(RARRAY_PTR(inf)[0]);
} }
if (TYPE(RARRAY_PTR(inf)[1]) == T_STRING) { if (RB_TYPE_P(RARRAY_PTR(inf)[1], T_STRING)) {
subst_inf->type[chr] = *(RSTRING_PTR(RARRAY_PTR(inf)[1])); subst_inf->type[chr] = *(RSTRING_PTR(RARRAY_PTR(inf)[1]));
} else { } else {
subst_inf->type[chr] = NUM2CHR(RARRAY_PTR(inf)[1]); subst_inf->type[chr] = NUM2CHR(RARRAY_PTR(inf)[1]);
@ -1587,7 +1587,7 @@ cbsubst_table_setup(argc, argv, self)
len = RARRAY_LEN(longkey_inf); len = RARRAY_LEN(longkey_inf);
for(idx = 0; idx < len; idx++) { for(idx = 0; idx < len; idx++) {
inf = RARRAY_PTR(longkey_inf)[idx]; inf = RARRAY_PTR(longkey_inf)[idx];
if (TYPE(inf) != T_ARRAY) continue; if (!RB_TYPE_P(inf, T_ARRAY)) continue;
chr = (unsigned char)(0x80 + idx); chr = (unsigned char)(0x80 + idx);
subst_inf->keylen[chr] = RSTRING_LEN(RARRAY_PTR(inf)[0]); subst_inf->keylen[chr] = RSTRING_LEN(RARRAY_PTR(inf)[0]);
@ -1602,7 +1602,7 @@ cbsubst_table_setup(argc, argv, self)
subst_inf->key[chr][RSTRING_LEN(RARRAY_PTR(inf)[0])] = '\0'; subst_inf->key[chr][RSTRING_LEN(RARRAY_PTR(inf)[0])] = '\0';
} }
#endif #endif
if (TYPE(RARRAY_PTR(inf)[1]) == T_STRING) { if (RB_TYPE_P(RARRAY_PTR(inf)[1], T_STRING)) {
subst_inf->type[chr] = *(RSTRING_PTR(RARRAY_PTR(inf)[1])); subst_inf->type[chr] = *(RSTRING_PTR(RARRAY_PTR(inf)[1]));
} else { } else {
subst_inf->type[chr] = NUM2CHR(RARRAY_PTR(inf)[1]); subst_inf->type[chr] = NUM2CHR(RARRAY_PTR(inf)[1]);
@ -1624,9 +1624,9 @@ cbsubst_table_setup(argc, argv, self)
len = RARRAY_LEN(proc_inf); len = RARRAY_LEN(proc_inf);
for(idx = 0; idx < len; idx++) { for(idx = 0; idx < len; idx++) {
inf = RARRAY_PTR(proc_inf)[idx]; inf = RARRAY_PTR(proc_inf)[idx];
if (TYPE(inf) != T_ARRAY) continue; if (!RB_TYPE_P(inf, T_ARRAY)) continue;
rb_hash_aset(subst_inf->proc, rb_hash_aset(subst_inf->proc,
((TYPE(RARRAY_PTR(inf)[0]) == T_STRING)? (RB_TYPE_P(RARRAY_PTR(inf)[0], T_STRING)?
INT2FIX(*(RSTRING_PTR(RARRAY_PTR(inf)[0]))) : INT2FIX(*(RSTRING_PTR(RARRAY_PTR(inf)[0]))) :
RARRAY_PTR(inf)[0]), RARRAY_PTR(inf)[0]),
RARRAY_PTR(inf)[1]); RARRAY_PTR(inf)[1]);

View File

@ -1363,7 +1363,7 @@ ole_ary_m_entry(VALUE val, LONG *pid)
VALUE obj = Qnil; VALUE obj = Qnil;
int i = 0; int i = 0;
obj = val; obj = val;
while(TYPE(obj) == T_ARRAY) { while(RB_TYPE_P(obj, T_ARRAY)) {
obj = rb_ary_entry(obj, pid[i]); obj = rb_ary_entry(obj, pid[i]);
i++; i++;
} }
@ -1489,7 +1489,7 @@ dimension(VALUE val) {
long dim1 = 0; long dim1 = 0;
long len = 0; long len = 0;
long i = 0; long i = 0;
if (TYPE(val) == T_ARRAY) { if (RB_TYPE_P(val, T_ARRAY)) {
len = RARRAY_LEN(val); len = RARRAY_LEN(val);
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
dim1 = dimension(rb_ary_entry(val, i)); dim1 = dimension(rb_ary_entry(val, i));
@ -1510,11 +1510,11 @@ ary_len_of_dim(VALUE ary, long dim) {
long i = 0; long i = 0;
VALUE val; VALUE val;
if (dim == 0) { if (dim == 0) {
if (TYPE(ary) == T_ARRAY) { if (RB_TYPE_P(ary, T_ARRAY)) {
ary_len = RARRAY_LEN(ary); ary_len = RARRAY_LEN(ary);
} }
} else { } else {
if (TYPE(ary) == T_ARRAY) { if (RB_TYPE_P(ary, T_ARRAY)) {
len = RARRAY_LEN(ary); len = RARRAY_LEN(ary);
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
val = rb_ary_entry(ary, i); val = rb_ary_entry(ary, i);
@ -1915,7 +1915,7 @@ ole_val2olevariantdata(VALUE val, VARTYPE vt, struct olevariantdata *pvar)
{ {
HRESULT hr = S_OK; HRESULT hr = S_OK;
if (((vt & ~VT_BYREF) == (VT_ARRAY | VT_UI1)) && TYPE(val) == T_STRING) { if (((vt & ~VT_BYREF) == (VT_ARRAY | VT_UI1)) && RB_TYPE_P(val, T_STRING)) {
long len = RSTRING_LEN(val); long len = RSTRING_LEN(val);
void *pdest = NULL; void *pdest = NULL;
SAFEARRAY *p = NULL; SAFEARRAY *p = NULL;
@ -2859,9 +2859,9 @@ fole_s_const_load(int argc, VALUE *argv, VALUE self)
LCID lcid = cWIN32OLE_lcid; LCID lcid = cWIN32OLE_lcid;
rb_scan_args(argc, argv, "11", &ole, &klass); rb_scan_args(argc, argv, "11", &ole, &klass);
if (TYPE(klass) != T_CLASS && if (!RB_TYPE_P(klass, T_CLASS) &&
TYPE(klass) != T_MODULE && !RB_TYPE_P(klass, T_MODULE) &&
TYPE(klass) != T_NIL) { !RB_TYPE_P(klass, T_NIL)) {
rb_raise(rb_eTypeError, "2nd parameter must be Class or Module"); rb_raise(rb_eTypeError, "2nd parameter must be Class or Module");
} }
if (rb_obj_is_kind_of(ole, cWIN32OLE)) { if (rb_obj_is_kind_of(ole, cWIN32OLE)) {
@ -2877,7 +2877,7 @@ fole_s_const_load(int argc, VALUE *argv, VALUE self)
ole_raise(hr, rb_eRuntimeError, "failed to GetContainingTypeLib"); ole_raise(hr, rb_eRuntimeError, "failed to GetContainingTypeLib");
} }
OLE_RELEASE(pTypeInfo); OLE_RELEASE(pTypeInfo);
if(TYPE(klass) != T_NIL) { if(!RB_TYPE_P(klass, T_NIL)) {
ole_const_load(pTypeLib, klass, self); ole_const_load(pTypeLib, klass, self);
} }
else { else {
@ -2885,7 +2885,7 @@ fole_s_const_load(int argc, VALUE *argv, VALUE self)
} }
OLE_RELEASE(pTypeLib); OLE_RELEASE(pTypeLib);
} }
else if(TYPE(ole) == T_STRING) { else if(RB_TYPE_P(ole, T_STRING)) {
file = typelib_file(ole); file = typelib_file(ole);
if (file == Qnil) { if (file == Qnil) {
file = ole; file = ole;
@ -2895,7 +2895,7 @@ fole_s_const_load(int argc, VALUE *argv, VALUE self)
SysFreeString(pBuf); SysFreeString(pBuf);
if (FAILED(hr)) if (FAILED(hr))
ole_raise(hr, eWIN32OLERuntimeError, "failed to LoadTypeLibEx"); ole_raise(hr, eWIN32OLERuntimeError, "failed to LoadTypeLibEx");
if(TYPE(klass) != T_NIL) { if(!RB_TYPE_P(klass, T_NIL)) {
ole_const_load(pTypeLib, klass, self); ole_const_load(pTypeLib, klass, self);
} }
else { else {
@ -3043,7 +3043,7 @@ fole_s_show_help(int argc, VALUE *argv, VALUE self)
} else { } else {
helpfile = target; helpfile = target;
} }
if (TYPE(helpfile) != T_STRING) { if (!RB_TYPE_P(helpfile, T_STRING)) {
rb_raise(rb_eTypeError, "1st parameter must be (String|WIN32OLE_TYPE|WIN32OLE_METHOD)"); rb_raise(rb_eTypeError, "1st parameter must be (String|WIN32OLE_TYPE|WIN32OLE_METHOD)");
} }
hwnd = ole_show_help(helpfile, helpcontext); hwnd = ole_show_help(helpfile, helpcontext);
@ -3346,7 +3346,7 @@ hash2named_arg(RB_BLOCK_CALL_FUNC_ARGLIST(pair, op))
the data-type of key must be String or Symbol the data-type of key must be String or Symbol
-----------------------------------------------*/ -----------------------------------------------*/
key = rb_ary_entry(pair, 0); key = rb_ary_entry(pair, 0);
if(TYPE(key) != T_STRING && TYPE(key) != T_SYMBOL) { if(!RB_TYPE_P(key, T_STRING) && !RB_TYPE_P(key, T_SYMBOL)) {
/* clear name of dispatch parameters */ /* clear name of dispatch parameters */
for(i = 1; i < index + 1; i++) { for(i = 1; i < index + 1; i++) {
SysFreeString(pOp->pNamedArgs[i]); SysFreeString(pOp->pNamedArgs[i]);
@ -3358,7 +3358,7 @@ hash2named_arg(RB_BLOCK_CALL_FUNC_ARGLIST(pair, op))
/* raise an exception */ /* raise an exception */
rb_raise(rb_eTypeError, "wrong argument type (expected String or Symbol)"); rb_raise(rb_eTypeError, "wrong argument type (expected String or Symbol)");
} }
if (TYPE(key) == T_SYMBOL) { if (RB_TYPE_P(key, T_SYMBOL)) {
key = rb_sym_to_s(key); key = rb_sym_to_s(key);
} }
@ -3424,10 +3424,10 @@ ole_invoke(int argc, VALUE *argv, VALUE self, USHORT wFlags, BOOL is_bracket)
op.dp.cArgs = 0; op.dp.cArgs = 0;
rb_scan_args(argc, argv, "1*", &cmd, &paramS); rb_scan_args(argc, argv, "1*", &cmd, &paramS);
if(TYPE(cmd) != T_STRING && TYPE(cmd) != T_SYMBOL && !is_bracket) { if(!RB_TYPE_P(cmd, T_STRING) && !RB_TYPE_P(cmd, T_SYMBOL) && !is_bracket) {
rb_raise(rb_eTypeError, "method is wrong type (expected String or Symbol)"); rb_raise(rb_eTypeError, "method is wrong type (expected String or Symbol)");
} }
if (TYPE(cmd) == T_SYMBOL) { if (RB_TYPE_P(cmd, T_SYMBOL)) {
cmd = rb_sym_to_s(cmd); cmd = rb_sym_to_s(cmd);
} }
OLEData_Get_Struct(self, pole); OLEData_Get_Struct(self, pole);
@ -3456,7 +3456,7 @@ ole_invoke(int argc, VALUE *argv, VALUE self, USHORT wFlags, BOOL is_bracket)
op.dp.cNamedArgs = 0; op.dp.cNamedArgs = 0;
/* if last arg is hash object */ /* if last arg is hash object */
if(TYPE(param) == T_HASH) { if(RB_TYPE_P(param, T_HASH)) {
/*------------------------------------------ /*------------------------------------------
hash object ==> named dispatch parameters hash object ==> named dispatch parameters
--------------------------------------------*/ --------------------------------------------*/
@ -4591,10 +4591,10 @@ fole_respond_to(VALUE self, VALUE method)
BSTR wcmdname; BSTR wcmdname;
DISPID DispID; DISPID DispID;
HRESULT hr; HRESULT hr;
if(TYPE(method) != T_STRING && TYPE(method) != T_SYMBOL) { if(!RB_TYPE_P(method, T_STRING) && !RB_TYPE_P(method, T_SYMBOL)) {
rb_raise(rb_eTypeError, "wrong argument type (expected String or Symbol)"); rb_raise(rb_eTypeError, "wrong argument type (expected String or Symbol)");
} }
if (TYPE(method) == T_SYMBOL) { if (RB_TYPE_P(method, T_SYMBOL)) {
method = rb_sym_to_s(method); method = rb_sym_to_s(method);
} }
OLEData_Get_Struct(self, pole); OLEData_Get_Struct(self, pole);
@ -7750,8 +7750,8 @@ ole_search_event_at(VALUE ary, VALUE ev)
ret = i; ret = i;
break; break;
} }
else if (TYPE(ev) == T_STRING && else if (RB_TYPE_P(ev, T_STRING) &&
TYPE(event_name) == T_STRING && RB_TYPE_P(event_name, T_STRING) &&
rb_str_cmp(ev, event_name) == 0) { rb_str_cmp(ev, event_name) == 0) {
ret = i; ret = i;
break; break;
@ -7926,7 +7926,7 @@ STDMETHODIMP EVENTSINK_Invoke(
} }
ary = rb_ivar_get(obj, id_events); ary = rb_ivar_get(obj, id_events);
if (NIL_P(ary) || TYPE(ary) != T_ARRAY) { if (NIL_P(ary) || !RB_TYPE_P(ary, T_ARRAY)) {
return NOERROR; return NOERROR;
} }
hr = pTypeInfo->lpVtbl->GetNames(pTypeInfo, dispid, hr = pTypeInfo->lpVtbl->GetNames(pTypeInfo, dispid,
@ -7936,7 +7936,7 @@ STDMETHODIMP EVENTSINK_Invoke(
} }
ev = WC2VSTR(bstr); ev = WC2VSTR(bstr);
event = ole_search_event(ary, ev, &is_default_handler); event = ole_search_event(ary, ev, &is_default_handler);
if (TYPE(event) == T_ARRAY) { if (RB_TYPE_P(event, T_ARRAY)) {
handler = rb_ary_entry(event, 0); handler = rb_ary_entry(event, 0);
mid = rb_intern("call"); mid = rb_intern("call");
is_outarg = rb_ary_entry(event, 3); is_outarg = rb_ary_entry(event, 3);
@ -7981,10 +7981,10 @@ STDMETHODIMP EVENTSINK_Invoke(
if (state != 0) { if (state != 0) {
rescue_callback(Qnil); rescue_callback(Qnil);
} }
if(TYPE(result) == T_HASH) { if(RB_TYPE_P(result, T_HASH)) {
hash2ptr_dispparams(result, pTypeInfo, dispid, pdispparams); hash2ptr_dispparams(result, pTypeInfo, dispid, pdispparams);
result = hash2result(result); result = hash2result(result);
}else if (is_outarg == Qtrue && TYPE(outargv) == T_ARRAY) { }else if (is_outarg == Qtrue && RB_TYPE_P(outargv, T_ARRAY)) {
ary2ptr_dispparams(outargv, pdispparams); ary2ptr_dispparams(outargv, pdispparams);
} }
@ -8384,7 +8384,7 @@ ev_advise(int argc, VALUE *argv, VALUE self)
rb_raise(rb_eTypeError, "1st parameter must be WIN32OLE object"); rb_raise(rb_eTypeError, "1st parameter must be WIN32OLE object");
} }
if(TYPE(itf) != T_NIL) { if(!RB_TYPE_P(itf, T_NIL)) {
if (rb_safe_level() > 0 && OBJ_TAINTED(itf)) { if (rb_safe_level() > 0 && OBJ_TAINTED(itf)) {
rb_raise(rb_eSecurityError, "Insecure Event Creation - %s", rb_raise(rb_eSecurityError, "Insecure Event Creation - %s",
StringValuePtr(itf)); StringValuePtr(itf));
@ -8478,7 +8478,7 @@ static void
add_event_call_back(VALUE obj, VALUE event, VALUE data) add_event_call_back(VALUE obj, VALUE event, VALUE data)
{ {
VALUE events = rb_ivar_get(obj, id_events); VALUE events = rb_ivar_get(obj, id_events);
if (NIL_P(events) || TYPE(events) != T_ARRAY) { if (NIL_P(events) || !RB_TYPE_P(events, T_ARRAY)) {
events = rb_ary_new(); events = rb_ary_new();
rb_ivar_set(obj, id_events, events); rb_ivar_set(obj, id_events, events);
} }
@ -8497,10 +8497,10 @@ ev_on_event(int argc, VALUE *argv, VALUE self, VALUE is_ary_arg)
} }
rb_scan_args(argc, argv, "01*", &event, &args); rb_scan_args(argc, argv, "01*", &event, &args);
if(!NIL_P(event)) { if(!NIL_P(event)) {
if(TYPE(event) != T_STRING && TYPE(event) != T_SYMBOL) { if(!RB_TYPE_P(event, T_STRING) && !RB_TYPE_P(event, T_SYMBOL)) {
rb_raise(rb_eTypeError, "wrong argument type (expected String or Symbol)"); rb_raise(rb_eTypeError, "wrong argument type (expected String or Symbol)");
} }
if (TYPE(event) == T_SYMBOL) { if (RB_TYPE_P(event, T_SYMBOL)) {
event = rb_sym_to_s(event); event = rb_sym_to_s(event);
} }
} }
@ -8587,10 +8587,10 @@ fev_off_event(int argc, VALUE *argv, VALUE self)
rb_scan_args(argc, argv, "01", &event); rb_scan_args(argc, argv, "01", &event);
if(!NIL_P(event)) { if(!NIL_P(event)) {
if(TYPE(event) != T_STRING && TYPE(event) != T_SYMBOL) { if(!RB_TYPE_P(event, T_STRING) && !RB_TYPE_P(event, T_SYMBOL)) {
rb_raise(rb_eTypeError, "wrong argument type (expected String or Symbol)"); rb_raise(rb_eTypeError, "wrong argument type (expected String or Symbol)");
} }
if (TYPE(event) == T_SYMBOL) { if (RB_TYPE_P(event, T_SYMBOL)) {
event = rb_sym_to_s(event); event = rb_sym_to_s(event);
} }
} }
@ -9152,7 +9152,7 @@ folevariant_set_value(VALUE self, VALUE val)
VARTYPE vt; VARTYPE vt;
Data_Get_Struct(self, struct olevariantdata, pvar); Data_Get_Struct(self, struct olevariantdata, pvar);
vt = V_VT(&(pvar->var)); vt = V_VT(&(pvar->var));
if (V_ISARRAY(&(pvar->var)) && ((vt & ~VT_BYREF) != (VT_UI1|VT_ARRAY) || TYPE(val) != T_STRING)) { if (V_ISARRAY(&(pvar->var)) && ((vt & ~VT_BYREF) != (VT_UI1|VT_ARRAY) || !RB_TYPE_P(val, T_STRING))) {
rb_raise(eWIN32OLERuntimeError, rb_raise(eWIN32OLERuntimeError,
"`value=' is not available for this variant type object"); "`value=' is not available for this variant type object");
} }
@ -9348,10 +9348,10 @@ folerecord_initialize(VALUE self, VALUE typename, VALUE oleobj) {
ITypeLib *pTypeLib = NULL; ITypeLib *pTypeLib = NULL;
IRecordInfo *pri = NULL; IRecordInfo *pri = NULL;
if (TYPE(typename) != T_STRING && TYPE(typename) != T_SYMBOL) { if (!RB_TYPE_P(typename, T_STRING) && !RB_TYPE_P(typename, T_SYMBOL)) {
rb_raise(rb_eArgError, "1st argument should be String or Symbol"); rb_raise(rb_eArgError, "1st argument should be String or Symbol");
} }
if (TYPE(typename) == T_SYMBOL) { if (RB_TYPE_P(typename, T_SYMBOL)) {
typename = rb_sym_to_s(typename); typename = rb_sym_to_s(typename);
} }
@ -9559,11 +9559,11 @@ static VALUE
folerecord_ole_instance_variable_get(VALUE self, VALUE name) folerecord_ole_instance_variable_get(VALUE self, VALUE name)
{ {
VALUE sname; VALUE sname;
if(TYPE(name) != T_STRING && TYPE(name) != T_SYMBOL) { if(!RB_TYPE_P(name, T_STRING) && !RB_TYPE_P(name, T_SYMBOL)) {
rb_raise(rb_eTypeError, "wrong argument type (expected String or Symbol)"); rb_raise(rb_eTypeError, "wrong argument type (expected String or Symbol)");
} }
sname = name; sname = name;
if (TYPE(name) == T_SYMBOL) { if (RB_TYPE_P(name, T_SYMBOL)) {
sname = rb_sym_to_s(name); sname = rb_sym_to_s(name);
} }
return olerecord_ivar_get(self, sname); return olerecord_ivar_get(self, sname);
@ -9598,11 +9598,11 @@ static VALUE
folerecord_ole_instance_variable_set(VALUE self, VALUE name, VALUE val) folerecord_ole_instance_variable_set(VALUE self, VALUE name, VALUE val)
{ {
VALUE sname; VALUE sname;
if(TYPE(name) != T_STRING && TYPE(name) != T_SYMBOL) { if(!RB_TYPE_P(name, T_STRING) && !RB_TYPE_P(name, T_SYMBOL)) {
rb_raise(rb_eTypeError, "wrong argument type (expected String or Symbol)"); rb_raise(rb_eTypeError, "wrong argument type (expected String or Symbol)");
} }
sname = name; sname = name;
if (TYPE(name) == T_SYMBOL) { if (RB_TYPE_P(name, T_SYMBOL)) {
sname = rb_sym_to_s(name); sname = rb_sym_to_s(name);
} }
return olerecord_ivar_set(self, sname, val); return olerecord_ivar_set(self, sname, val);