module YAML::ArrayConverter(Converter)

Overview

Converter to be used with YAML.mapping to serialize the Array(T) elements with the custom converter.

require "yaml"

class Timestamp
  YAML.mapping({
    values: {type: Array(Time), converter: YAML::ArrayConverter(Time::EpochConverter)},
  })
end

timestamp = Timestamp.from_yaml(%({"values":[1459859781,1567628762]}))
timestamp.values  # => [2016-04-05 12:36:21 UTC, 2019-09-04 20:26:02 UTC]
timestamp.to_yaml # => ---\nvalues:\n- 1459859781\n- 1567628762\n

Defined in:

yaml/from_yaml.cr
yaml/to_yaml.cr

Class Method Summary

Class Method Detail

def self.from_yaml(ctx : YAML::ParseContext, node : YAML::Nodes::Node) : Array #

[View source]
def self.to_yaml(values : Array, yaml : YAML::Nodes::Builder) #

[View source]