Class: LibConfig::BaseSetting

Inherits:
Object
  • Object
show all
Defined in:
ext/rlibconfig.c

Direct Known Subclasses

Aggregate, Setting

Instance Method Summary collapse

Constructor Details

#initialize(setting) ⇒ Object



205
206
207
208
209
210
211
212
# File 'ext/rlibconfig.c', line 205

static VALUE rbConfigBaseSetting_initialize(VALUE self, VALUE setting)
{
  if(setting != Qnil)
    Check_Type(setting, T_DATA);
  rb_iv_set(self, "@setting", setting);
  
  return self;
}

Instance Method Details

#indexObject



247
248
249
250
251
252
253
254
255
256
# File 'ext/rlibconfig.c', line 247

static VALUE rbConfigBaseSetting_index(VALUE self)
{
  if(rb_iv_get(self, "@setting") != Qnil) {
    config_setting_t* setting = NULL;
    Data_Get_Struct(rb_iv_get(self, "@setting"), config_setting_t, setting);
    return INT2FIX(config_setting_index(setting));
  } else {
    return Qnil;
  }
}

#lineObject



258
259
260
261
262
263
264
265
266
267
# File 'ext/rlibconfig.c', line 258

static VALUE rbConfigBaseSetting_line(VALUE self)
{
  if(rb_iv_get(self, "@setting") != Qnil) {
    config_setting_t* setting = NULL;
    Data_Get_Struct(rb_iv_get(self, "@setting"), config_setting_t, setting);
    return INT2FIX(config_setting_source_line(setting));
  } else {
    return Qnil;
  }
}

#nameObject



214
215
216
217
218
219
220
221
222
223
# File 'ext/rlibconfig.c', line 214

static VALUE rbConfigBaseSetting_name(VALUE self)
{
  if(rb_iv_get(self, "@setting") != Qnil) {
    config_setting_t* setting = NULL;
    Data_Get_Struct(rb_iv_get(self, "@setting"), config_setting_t, setting);
    return rb_str_new2(config_setting_name(setting));
  } else {
    return Qnil;
  }
}

#parentObject



225
226
227
228
229
230
231
232
233
234
# File 'ext/rlibconfig.c', line 225

static VALUE rbConfigBaseSetting_parent(VALUE self)
{
  if(rb_iv_get(self, "@setting") != Qnil) {
    config_setting_t* setting = NULL;
    Data_Get_Struct(rb_iv_get(self, "@setting"), config_setting_t, setting);
    return rconfig_wrap_setting(config_setting_parent(setting));
  } else {
    return Qnil;
  }
}

#root?Boolean

Returns:



236
237
238
239
240
241
242
243
244
245
# File 'ext/rlibconfig.c', line 236

static VALUE rbConfigBaseSetting_is_root(VALUE self)
{
  if(rb_iv_get(self, "@setting") != Qnil) {
    config_setting_t* setting = NULL;
    Data_Get_Struct(rb_iv_get(self, "@setting"), config_setting_t, setting);
    return config_setting_is_root(setting) ? Qtrue : Qfalse;
  } else {
    return Qnil;
  }
}