Class: CMigemo
- Inherits:
-
Data
- Object
- Data
- CMigemo
- Defined in:
- ext/cmigemo.c
Constant Summary collapse
- MIGEMO =
INT2NUM(MIGEMO_DICTID_MIGEMO)
- ROMA2HIRA =
INT2NUM(MIGEMO_DICTID_ROMA2HIRA)
- HIRA2KATA =
INT2NUM(MIGEMO_DICTID_HIRA2KATA)
- HAN2ZEN =
INT2NUM(MIGEMO_DICTID_HAN2ZEN)
- ZEN2HAN =
INT2NUM(MIGEMO_DICTID_ZEN2HAN)
Instance Method Summary collapse
Instance Method Details
#close ⇒ Object
49 50 51 52 53 54 55 56 57 58 59 |
# File 'ext/cmigemo.c', line 49
static VALUE
rb_cmigemo_close(VALUE self)
{
struct RMigemo *rm;
Data_Get_Struct(self, struct RMigemo, rm);
if(rm->open){
migemo_close(rm->migemo);
rm->open = 0;
}
return Qnil;
}
|
#load(id, rstr) ⇒ Object
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 |
# File 'ext/cmigemo.c', line 80
static VALUE
rb_cmigemo_load(VALUE self, VALUE id, VALUE rstr)
{
struct RMigemo *rm;
int result;
int dict_id = NUM2INT(id);
char *dict = StringValuePtr(rstr);
Data_Get_Struct(self, struct RMigemo, rm);
if(rm->open){
result = migemo_load(rm->migemo, dict_id, dict);
if(result == MIGEMO_DICTID_INVALID){
rb_raise(rb_eArgError, "invalid dict file");
}
return INT2NUM(result);
} else {
rb_raise(rb_eException, "migemo closed");
}
}
|
#query(rstr) ⇒ Object
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'ext/cmigemo.c', line 61
static VALUE
rb_cmigemo_query(VALUE self, VALUE rstr)
{
struct RMigemo *rm;
unsigned char* str;
migemo *m;
VALUE result;
Data_Get_Struct(self, struct RMigemo, rm);
if(rm->open){
str = migemo_query(rm->migemo, (unsigned char*)StringValuePtr(rstr));
result = rb_tainted_str_new2(str);
migemo_release(rm->migemo, str);
return result;
} else {
rb_raise(rb_eException, "migemo closed");
}
}
|