Class: Plamo::HttpHeader

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

Instance Method Summary collapse

Constructor Details

#initializeObject



25
26
27
28
# File 'ext/plamo/plamo_http_header.c', line 25

static VALUE initialize(VALUE self) {
  DATA_PTR(self) = plamo_http_header_new();
  return self;
}

Instance Method Details

#[](key) ⇒ Object



37
38
39
40
41
42
43
44
45
46
47
# File 'ext/plamo/plamo_http_header.c', line 37

static VALUE get(VALUE self, VALUE key) {
  PlamoHttpHeader *plamo_http_header;
  TypedData_Get_Struct(self, PlamoHttpHeader, &rb_plamo_http_header_type, plamo_http_header);
  PlamoStringArray *plamo_string_array = plamo_http_header_get(plamo_http_header, StringValueCStr(key));
  if (plamo_string_array != NULL) {
    VALUE rb_plamo_string_array = TypedData_Wrap_Struct(rb_cPlamoStringArray, &rb_plamo_string_array_type, plamo_string_array);
    return rb_plamo_string_array;
  } else {
    return Qnil;
  }
}

#delete(key) ⇒ Object



60
61
62
63
64
65
66
67
68
# File 'ext/plamo/plamo_http_header.c', line 60

static VALUE delete_at(VALUE self, VALUE key) {
  PlamoHttpHeader *plamo_http_header;
  TypedData_Get_Struct(self, PlamoHttpHeader, &rb_plamo_http_header_type, plamo_http_header);
  if (plamo_http_header_remove(plamo_http_header, StringValueCStr(key))) {
    return Qtrue;
  } else {
    return Qfalse;
  }
}

#eachObject



53
54
55
56
57
58
# File 'ext/plamo/plamo_http_header.c', line 53

static VALUE each(VALUE self) {
  PlamoHttpHeader *plamo_http_header;
  TypedData_Get_Struct(self, PlamoHttpHeader, &rb_plamo_http_header_type, plamo_http_header);
  plamo_http_header_for_each(plamo_http_header, execute_each);
  return Qnil;
}

#push(key, value) ⇒ Object



30
31
32
33
34
35
# File 'ext/plamo/plamo_http_header.c', line 30

static VALUE push(VALUE self, VALUE key, VALUE value) {
  PlamoHttpHeader *plamo_http_header;
  TypedData_Get_Struct(self, PlamoHttpHeader, &rb_plamo_http_header_type, plamo_http_header);
  plamo_http_header_add(plamo_http_header, StringValueCStr(key), StringValueCStr(value));
  return Qnil;
}