Class: Symbol

Inherits:
Object
  • Object
show all
Defined in:
(unknown)

Instance Method Summary collapse

Instance Method Details

#to_msgpack(*args) ⇒ Object

call-seq:

symbol.to_msgpack(out = '') -> String

Serializes the Symbol into raw bytes.



194
195
196
197
198
199
200
201
202
203
204
205
206
# File 'ext/pack.c', line 194

static VALUE MessagePack_Symbol_to_msgpack(int argc, VALUE *argv, VALUE self)
{
#ifdef COMPAT_HAVE_ENCODING
  return MessagePack_String_to_msgpack(argc, argv, rb_id2str(SYM2ID(self)));
#else
  ARG_BUFFER(out, argc, argv);
  const char* name = rb_id2name(SYM2ID(self));
  size_t len = strlen(name);
  msgpack_pack_raw(out, len);
  msgpack_pack_raw_body(out, name, len);
  return out;
#endif
}