int rb_enc_to_index(VALUE enc) { if (CLASS_OF(enc) == rb_cEncoding) { return index_of_encoding(RENC(enc)); } return -1; }
int rb_to_encoding_index(VALUE enc) { if (CLASS_OF(enc) != rb_cEncoding && TYPE(enc) != T_STRING) { return -1; } else { int idx = index_of_encoding((rb_encoding_t *)enc); if (idx >= 0) { return idx; } else if (NIL_P(enc = rb_check_string_type(enc))) { return -1; } if (!rb_enc_asciicompat(rb_enc_get(enc))) { return -1; } return rb_enc_find_index(StringValueCStr(enc)); } }
int rb_usascii_encindex(void) { return index_of_encoding(rb_encodings[ENCODING_ASCII]); }
int rb_utf8_encindex(void) { return index_of_encoding(rb_encodings[ENCODING_UTF8]); }
int rb_ascii8bit_encindex(void) { return index_of_encoding(rb_encodings[ENCODING_BINARY]); }
int rb_enc_find_index(const char *name) { return index_of_encoding(rb_enc_find(name)); }
int rb_enc_get_index(VALUE obj) { return index_of_encoding(rb_enc_get(obj)); }