Sha256: 50bba6639fbc6c2ea8af80e321299dd8deecf147687db7c280aa8e943ebbc0c7

Contents?: true

Size: 464 Bytes

Versions: 3

Compression:

Stored size: 464 Bytes

Contents

#include "hash.h"

void hash_attributes_writer(VALUE obj, VALUE attributes,
                             EachAttributeFunc func, VALUE writer) {
  long i;
  for (i = 0; i < RARRAY_LEN(attributes); i++) {
    volatile VALUE raw_attribute = RARRAY_AREF(attributes, i);
    Attribute attribute = attribute_read(raw_attribute);

    volatile VALUE value = rb_hash_aref(obj, attribute->name_str);

    func(writer, attr_name_for_serialization(attribute), value);
  }
}

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
panko_serializer-0.7.2 ext/panko_serializer/attributes_writer/hash.c
panko_serializer-0.7.1 ext/panko_serializer/attributes_writer/hash.c
panko_serializer-0.7.0 ext/panko_serializer/attributes_writer/hash.c