class Patricia::Node
Public Instance Methods
data()
click to toggle source
static VALUE p_data (VALUE self) { VALUE user_data; patricia_node_t *node; Data_Get_Struct(self, patricia_node_t, node); user_data = (VALUE)node->data; /* for backwards compatibility, we always dup and return new strings */ if (TYPE(user_data) == T_STRING) user_data = rb_str_dup(user_data); return user_data; }
Also aliased as: show_data
network()
click to toggle source
static VALUE p_network (VALUE self) { patricia_node_t *node; VALUE str = rb_str_new(0, PATRICIA_MAXSTRLEN); char *cstr = RSTRING_PTR(str); Data_Get_Struct(self, patricia_node_t, node); prefix_toa2x(node->prefix, cstr, 0); rb_str_set_len(str, strlen(cstr)); return str; }
prefix()
click to toggle source
static VALUE p_prefix (VALUE self) { patricia_node_t *node; VALUE str = rb_str_new(0, INET6_ADDRSTRLEN); char *cstr = RSTRING_PTR(str); Data_Get_Struct(self, patricia_node_t, node); prefix_toa2(node->prefix, cstr); rb_str_set_len(str, strlen(cstr)); return str; }
prefixlen()
click to toggle source
static VALUE p_prefixlen (VALUE self) { patricia_node_t *node; Data_Get_Struct(self, patricia_node_t, node); return INT2NUM(node->prefix->bitlen); }