Sha256: edc790e7d241d2a3a5af31bd2be84b3628b45138e2a93bd5050dc1c3a4538552

Contents?: true

Size: 704 Bytes

Versions: 4

Compression:

Stored size: 704 Bytes

Contents

#pragma once

#include <ruby.h>
#include <stdbool.h>

#include "attributes_writer/attributes_writer.h"

typedef struct _SerializationDescriptor {
  // type of the serializer, so we can create it later
  VALUE serializer_type;
  // Cached value of the serializer
  VALUE serializer;

  // Metadata
  VALUE attributes;
  VALUE aliases;
  VALUE method_fields;
  VALUE has_one_associations;
  VALUE has_many_associations;

  AttributesWriter attributes_writer;
} * SerializationDescriptor;

SerializationDescriptor sd_read(VALUE descriptor);

void sd_mark(SerializationDescriptor data);

void sd_set_writer(SerializationDescriptor sd, VALUE subject);

void panko_init_serialization_descriptor(VALUE mPanko);

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
panko_serializer-0.5.9 ext/panko_serializer/serialization_descriptor/serialization_descriptor.h
panko_serializer-0.5.8 ext/panko_serializer/serialization_descriptor/serialization_descriptor.h
panko_serializer-0.5.7 ext/panko_serializer/serialization_descriptor/serialization_descriptor.h
panko_serializer-0.5.6 ext/panko_serializer/serialization_descriptor/serialization_descriptor.h