Class: Plamo::FormData

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

Instance Method Summary collapse

Constructor Details

#initialize(rb_plamo_request) ⇒ Object



25
26
27
28
29
30
31
32
33
34
# File 'ext/plamo/plamo_form_data.c', line 25

static VALUE initialize(VALUE self, VALUE rb_plamo_request) {
  PlamoRequest *plamo_request;
  TypedData_Get_Struct(rb_plamo_request, PlamoRequest, &rb_plamo_request_type, plamo_request);
  PlamoFormData *plamo_form_data = plamo_form_data_new(plamo_request);
  if (plamo_form_data == NULL) {
    return Qnil;
  }
  DATA_PTR(self) = plamo_form_data;
  return self;
}

Instance Method Details

#[](key) ⇒ Object



49
50
51
52
53
54
55
56
57
58
59
# File 'ext/plamo/plamo_form_data.c', line 49

static VALUE get(VALUE self, VALUE key) {
  PlamoFormData *plamo_form_data;
  TypedData_Get_Struct(self, PlamoFormData, &rb_plamo_form_data_type, plamo_form_data);
  const PlamoFormDataFieldArray *plamo_form_data_field_array = plamo_form_data_get(plamo_form_data, StringValueCStr(key));
  if (plamo_form_data_field_array == NULL) {
    return Qnil;
  }
  VALUE rb_plamo_form_data_field_array = TypedData_Wrap_Struct(rb_cPlamoFormDataFieldArray, &rb_plamo_form_data_field_array_type, (PlamoFormDataFieldArray*)plamo_form_data_field_array);
  OBJ_FREEZE(rb_plamo_form_data_field_array);
  return rb_plamo_form_data_field_array;
}

#eachObject



42
43
44
45
46
47
# File 'ext/plamo/plamo_form_data.c', line 42

static VALUE each(VALUE self) {
  PlamoFormData *plamo_form_data;
  TypedData_Get_Struct(self, PlamoFormData, &rb_plamo_form_data_type, plamo_form_data);
  plamo_form_data_for_each(plamo_form_data, execute_each);
  return Qnil;
}