Class: Katana::SelectorData

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

Instance Method Summary collapse

Instance Method Details

#argumentString?

Returns:

  • (String, nil)


499
500
501
502
503
504
505
506
507
# File 'ext/katana/rb_katana_selector.c', line 499

VALUE rb_selector_data_argument(VALUE self)
{
  KatanaSelectorRareData *c_sel;
  Data_Get_Struct(self, KatanaSelectorRareData, c_sel);
  if (c_sel->argument)
    return UTF8_STR_NEW(c_sel->argument);
  else
    return Qnil;
}

#attributeKatana::QualifiedName?

Returns:



486
487
488
489
490
491
492
493
494
# File 'ext/katana/rb_katana_selector.c', line 486

VALUE rb_selector_data_attr(VALUE self)
{
  KatanaSelectorRareData *c_sel;
  Data_Get_Struct(self, KatanaSelectorRareData, c_sel);
  if (c_sel->attribute)
    return Data_Wrap_Struct(rb_QualifiedName, NULL, NULL, c_sel->attribute);
  else
    return Qnil;
}

#selectorsKatana::Array?

Returns:



512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
# File 'ext/katana/rb_katana_selector.c', line 512

VALUE rb_selector_data_selectors(VALUE self)
{
  KatanaSelectorRareData *c_sel;
  Data_Get_Struct(self, KatanaSelectorRareData, c_sel);

  if (c_sel->selectors)
  {
    VALUE array = Data_Wrap_Struct(rb_KArray, NULL, NULL, c_sel->selectors);

    VALUE sing = rb_singleton_class(array);
    rb_define_method(sing, "each", rb_selector_each, 0);

    return array;
  }
  else
    return Qnil;
}

#valueString?

Returns:

  • (String, nil)


473
474
475
476
477
478
479
480
481
# File 'ext/katana/rb_katana_selector.c', line 473

VALUE rb_selector_data_value(VALUE self)
{
  KatanaSelectorRareData *c_sel;
  Data_Get_Struct(self, KatanaSelectorRareData, c_sel);
  if (c_sel->value)
    return UTF8_STR_NEW(c_sel->value);
  else
    return Qnil;
}