avro-builder 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5420ca208ea3fd4e3656158ed44ef8270eb0d22a
4
- data.tar.gz: 74375f766022da155afa1421c0cd6068aa24e812
3
+ metadata.gz: 55be55b48ed971e75719a7c77d72002a384ae371
4
+ data.tar.gz: 164cddb8d0eb7ab54df709751bc0bd3d0b9a4164
5
5
  SHA512:
6
- metadata.gz: 4a3f0b4e0f8a9107d56d60e85586295b9ca18ae0c0197a646ee917d6ee9f6617148ab47b02cc3ef017e6298dd611bc1cf8e8ff2d08432ead66f1585d0350f7e4
7
- data.tar.gz: 6de4bceaee6e27726d62100cece189dc9ef574c2790b23c495a4cc74d6f9852f03805e819edb0d28c63f67ad1d3d0cce7899edc619290b2905aac03cd37b294f
6
+ metadata.gz: af77d1df17425d13af42225a8c1ca04e99464e1a907c588699159cf0b0b6248e1fa1af1443f1de64ec186680ec03a895547157e1923cef62132d49e69552e16f
7
+ data.tar.gz: 31bd7491a67a0cd075fbf193aa896cadb27ca0ce9c68851bf1e2aa4b302678ae14c34cc81ae1b327523f4c7d450df8f2eeba1f42cff0b6d491826c21c4785e1c
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ ruby-2.3.1
data/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # avro-builder changelog
2
2
 
3
+ ## v0.7.0
4
+ - Only allow `type_name` and `type_namespace` options for naming named types
5
+ defined inline.
6
+ - Only allow first argument to set name, and `namespace` option for top-level
7
+ types.
8
+ - Only allow `aliases` attribute to set aliases for top-level types.
9
+
3
10
  ## v0.6.0
4
11
  - Support recursive definitions.
5
12
  - Coerce aliases to be represented as an array.
@@ -7,6 +7,9 @@ require 'avro/builder/definition_cache'
7
7
  require 'avro/builder/type_factory'
8
8
  require 'avro/builder/types'
9
9
  require 'avro/builder/field'
10
+ require 'avro/builder/record'
11
+ require 'avro/builder/enum'
12
+ require 'avro/builder/fixed'
10
13
  require 'avro/builder/file_handler'
11
14
  require 'avro/builder/schema_serializer_reference_state'
12
15
 
@@ -79,10 +82,11 @@ module Avro
79
82
  @cache ||= Avro::Builder::DefinitionCache.new(self)
80
83
  end
81
84
 
82
- def create_named_type(name, type_name, options = {}, &block)
83
- create_and_configure_builtin_type(type_name,
85
+ def create_named_type(name, avro_type_name, options = {}, &block)
86
+ create_and_configure_builtin_type(avro_type_name,
84
87
  cache: cache,
85
- internal: { name: name, namespace: namespace },
88
+ internal: { _name: name,
89
+ namespace: namespace },
86
90
  options: options,
87
91
  &block).tap do |type|
88
92
  type.validate!
@@ -19,10 +19,6 @@ module Avro
19
19
  base.extend ClassMethods
20
20
  end
21
21
 
22
- def dsl_attribute?(name)
23
- self.class.dsl_attribute_names.include?(name.to_sym)
24
- end
25
-
26
22
  module ClassMethods
27
23
  # If a block is specified then it is used to define the
28
24
  # combined getter/setter method for the DSL attribute.
@@ -60,13 +56,13 @@ module Avro
60
56
  end
61
57
  end
62
58
 
63
- private
64
-
65
59
  def add_attribute_name(name)
66
60
  dsl_attribute_names << name
67
61
  add_option_name(name)
68
62
  end
69
63
 
64
+ private
65
+
70
66
  def define_accessor(name)
71
67
  ivar = :"@#{name}"
72
68
  define_method(name) do |value = nil|
@@ -82,6 +78,10 @@ module Avro
82
78
  private(writer)
83
79
  end
84
80
  end
81
+
82
+ def dsl_attribute?(name)
83
+ self.class.dsl_attribute_names.include?(name.to_sym)
84
+ end
85
85
  end
86
86
  end
87
87
  end
@@ -19,11 +19,17 @@ module Avro
19
19
  end
20
20
 
21
21
  module ClassMethods
22
- # A DSL option is only settable as an option, not as method in a block.
23
- def dsl_option(name, &block)
22
+
23
+ # Defines a private writer with #{dsl_name}= to set an attribute stored in the
24
+ # instance variable @#{name}.
25
+ def dsl_option(name, dsl_name:)
24
26
  add_option_name(name)
25
- define_private_writer(name)
26
- define_reader(name, &block)
27
+ add_attribute_name(dsl_name)
28
+ aliased_writer = "#{dsl_name}="
29
+ define_method(aliased_writer) do |value|
30
+ instance_variable_set("@#{name}", value)
31
+ end
32
+ private(aliased_writer)
27
33
  end
28
34
 
29
35
  def dsl_option_names
@@ -35,37 +41,9 @@ module Avro
35
41
  end
36
42
  end
37
43
 
38
- private
39
-
40
44
  def add_option_name(name)
41
45
  dsl_option_names << name
42
46
  end
43
-
44
- def define_private_writer(name)
45
- attr_writer(name)
46
- private("#{name}=")
47
- end
48
-
49
- # Define a accessor method that raises an error if called as a writer.
50
- # If the optional block is specified then it is evaluated as the reader.
51
- def define_reader(name, &block)
52
- if block_given?
53
- define_method(name) do |value = nil|
54
- value ? unsupported_block_attribute(name, type_name) : instance_eval(&block)
55
- end
56
- else
57
- define_method(name) do |value = nil|
58
- value ? unsupported_block_attribute(name, type_name) : instance_variable_get("@#{name}")
59
- end
60
- end
61
- end
62
- end
63
-
64
- private
65
-
66
- def unsupported_block_attribute(attribute, type)
67
- raise UnsupportedBlockAttributeError.new(attribute: attribute,
68
- type: type)
69
47
  end
70
48
  end
71
49
  end
@@ -0,0 +1,8 @@
1
+ module Avro
2
+ module Builder
3
+
4
+ class Enum < Avro::Builder::Types::EnumType
5
+ include Avro::Builder::Types::TopLevel
6
+ end
7
+ end
8
+ end
@@ -38,16 +38,6 @@ module Avro
38
38
  end
39
39
  end
40
40
 
41
- class UnsupportedBlockAttributeError < StandardError
42
- def initialize(attribute:, type:, field: nil)
43
- target = if field
44
- "field '#{field}' of type :#{type}"
45
- else
46
- "type :#{type}"
47
- end
48
- super("'#{attribute}' must be set directly using an option on #{target}, "\
49
- 'not via a block')
50
- end
51
- end
41
+ AttributeError = Class.new(StandardError)
52
42
  end
53
43
  end
@@ -17,9 +17,7 @@ module Avro
17
17
  # These attributes may be set as options or via a block in the DSL
18
18
  dsl_attributes :doc, :default, :order
19
19
 
20
- attr_reader :name
21
-
22
- def initialize(name:, type_name:, record:, cache:, internal: {}, options: {}, &block)
20
+ def initialize(name:, avro_type_name:, record:, cache:, internal: {}, options: {}, &block)
23
21
  @cache = cache
24
22
  @record = record
25
23
  @name = name.to_s
@@ -33,14 +31,14 @@ module Avro
33
31
  send(key, type_options.delete(key)) if dsl_attribute?(key)
34
32
  end
35
33
 
36
- @type = if builtin_type?(type_name)
37
- create_and_configure_builtin_type(type_name,
34
+ @type = if builtin_type?(avro_type_name)
35
+ create_and_configure_builtin_type(avro_type_name,
38
36
  field: self,
39
37
  cache: cache,
40
38
  internal: internal,
41
39
  options: type_options)
42
40
  else
43
- cache.lookup_named_type(type_name, namespace)
41
+ cache.lookup_named_type(avro_type_name, namespace)
44
42
  end
45
43
 
46
44
  # DSL calls must be evaluated after the type has been constructed
@@ -66,9 +64,7 @@ module Avro
66
64
  # and return the namespace value from the enclosing record.
67
65
  def namespace(value = nil)
68
66
  if value
69
- raise UnsupportedBlockAttributeError.new(attribute: :namespace,
70
- field: @name,
71
- type: type.type_name)
67
+ type.namespace(value)
72
68
  else
73
69
  record.namespace
74
70
  end
@@ -77,9 +73,7 @@ module Avro
77
73
  # Delegate setting name explicitly via DSL to type
78
74
  def name(value = nil)
79
75
  if value
80
- raise UnsupportedBlockAttributeError.new(attribute: :name,
81
- field: @name,
82
- type: type.type_name)
76
+ type.name(value)
83
77
  else
84
78
  # Return the name of the field
85
79
  @name
@@ -0,0 +1,8 @@
1
+ module Avro
2
+ module Builder
3
+
4
+ class Fixed < Avro::Builder::Types::FixedType
5
+ include Avro::Builder::Types::TopLevel
6
+ end
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ module Avro
2
+ module Builder
3
+
4
+ class Record < Avro::Builder::Types::RecordType
5
+ include Avro::Builder::Types::TopLevel
6
+ end
7
+ end
8
+ end
@@ -4,40 +4,43 @@ module Avro
4
4
  # This concern is used by classes that create new Type instances.
5
5
  module TypeFactory
6
6
 
7
- COMPLEX_TYPES = Set.new(%w(array enum fixed map record union).map(&:freeze)).freeze
7
+ NAMED_TYPES = %w(enum fixed record).map(&:freeze).to_set.freeze
8
+ COMPLEX_TYPES = %w(array enum fixed map record union).map(&:freeze).to_set.freeze
8
9
  BUILTIN_TYPES = Avro::Schema::PRIMITIVE_TYPES.union(COMPLEX_TYPES).freeze
9
10
 
10
11
  private
11
12
 
12
13
  # Return a new Type instance
13
- def create_builtin_type(type_name, field:, cache:)
14
- name = type_name.to_s.downcase
14
+ def create_builtin_type(avro_type_name, field:, cache:)
15
+ name = avro_type_name.to_s.downcase
15
16
  if Avro::Schema::PRIMITIVE_TYPES.include?(name)
16
17
  Avro::Builder::Types::Type.new(name, field: field, cache: cache)
18
+ elsif field.nil? && NAMED_TYPES.include?(name)
19
+ Avro::Builder.const_get(name.capitalize).new(cache: cache)
17
20
  elsif COMPLEX_TYPES.include?(name)
18
21
  Avro::Builder::Types.const_get("#{name.capitalize}Type").new(field: field, cache: cache)
19
22
  else
20
- raise "Invalid builtin type: #{type_name}"
23
+ raise "Invalid builtin type: #{avro_type_name}"
21
24
  end
22
25
  end
23
26
 
24
27
  # Return a new Type instance, including propagating internal state
25
28
  # and setting attributes via the DSL
26
- def create_and_configure_builtin_type(type_name,
29
+ def create_and_configure_builtin_type(avro_type_name,
27
30
  field: nil,
28
31
  cache: nil,
29
32
  internal: {},
30
33
  options: {},
31
34
  &block)
32
- create_builtin_type(type_name, field: field, cache: cache).tap do |type|
35
+ create_builtin_type(avro_type_name, field: field, cache: cache).tap do |type|
33
36
  type.configure_options(internal.merge(options))
34
37
  type.cache!
35
38
  type.instance_eval(&block) if block_given?
36
39
  end
37
40
  end
38
41
 
39
- def builtin_type?(type_name)
40
- BUILTIN_TYPES.include?(type_name.to_s)
42
+ def builtin_type?(avro_type_name)
43
+ BUILTIN_TYPES.include?(avro_type_name.to_s)
41
44
  end
42
45
  end
43
46
  end
@@ -20,7 +20,7 @@ module Avro
20
20
 
21
21
  def serialize(referenced_state)
22
22
  {
23
- type: type_name,
23
+ type: avro_type_name,
24
24
  items: items.serialize(referenced_state)
25
25
  }
26
26
  end
@@ -12,7 +12,7 @@ module Avro
12
12
 
13
13
  # Override initialize so that type name is not required
14
14
  def initialize(cache:, field: nil)
15
- super(self.class.type_name, cache: cache, field: field)
15
+ super(self.class.avro_type_name, cache: cache, field: field)
16
16
  end
17
17
 
18
18
  def namespace
@@ -21,9 +21,9 @@ module Avro
21
21
 
22
22
  module ClassMethods
23
23
 
24
- # Infer type_name based on class
25
- def type_name
26
- @type_name ||= name.split('::').last.sub('Type', '').downcase.to_sym
24
+ # Infer avro_type_name based on class
25
+ def avro_type_name
26
+ @avro_type_name ||= name.split('::').last.sub('Type', '').downcase.to_sym
27
27
  end
28
28
  end
29
29
  end
@@ -16,7 +16,7 @@ module Avro
16
16
 
17
17
  def serialize(referenced_state)
18
18
  {
19
- type: type_name,
19
+ type: avro_type_name,
20
20
  values: values.serialize(referenced_state)
21
21
  }
22
22
  end
@@ -0,0 +1,62 @@
1
+ module Avro
2
+ module Builder
3
+ module Types
4
+
5
+ # This concern provides error handling for attributes related to naming
6
+ # that are handled differently at the top-level vs inline.
7
+ module NamedErrorHandling
8
+
9
+ # Errors for attributes specified via block
10
+
11
+ def type_name(_value)
12
+ name_attribute_error!
13
+ end
14
+
15
+ def type_namespace(_value)
16
+ namespace_attribute_error!
17
+ end
18
+
19
+ private
20
+
21
+ # Errors for misnamed options
22
+
23
+ def name=(_value)
24
+ type_name_instead_of_name_error!
25
+ end
26
+
27
+ def namespace=(_value)
28
+ type_namespace_instead_of_namespace_error!
29
+ end
30
+
31
+ # Methods to raise errors
32
+
33
+ def specify_as_type_option_error!(name)
34
+ raise AttributeError
35
+ .new("'type_#{name}' must be specified as an option, not via a block")
36
+ end
37
+
38
+ def name_attribute_error!
39
+ specify_as_type_option_error!(:name)
40
+ end
41
+
42
+ def namespace_attribute_error!
43
+ specify_as_type_option_error!(:namespace)
44
+ end
45
+
46
+ def type_option_instead_of_option_error!(name)
47
+ raise AttributeError
48
+ .new("'type_#{name}' must be specified as an option instead of '#{name}'")
49
+ end
50
+
51
+ def type_name_instead_of_name_error!
52
+ type_option_instead_of_option_error!(:name)
53
+ end
54
+
55
+ def type_namespace_instead_of_namespace_error!
56
+ type_option_instead_of_option_error!(:namespace)
57
+ end
58
+
59
+ end
60
+ end
61
+ end
62
+ end
@@ -1,6 +1,7 @@
1
1
  require 'avro/builder/types/configurable_type'
2
2
  require 'avro/builder/namespaceable'
3
3
  require 'avro/builder/aliasable'
4
+ require 'avro/builder/types/named_error_handling'
4
5
 
5
6
  module Avro
6
7
  module Builder
@@ -14,13 +15,30 @@ module Avro
14
15
  include Avro::Builder::Types::ConfigurableType
15
16
  include Avro::Builder::Aliasable
16
17
 
17
- dsl_option :namespace
18
- dsl_option :name do
19
- @name || "__#{name_fragment}_#{type_name}"
20
- end
18
+ dsl_option :name, dsl_name: :type_name
19
+ dsl_option :namespace, dsl_name: :type_namespace
21
20
 
22
21
  dsl_attribute_alias :type_aliases, :aliases
23
22
 
23
+ # This module most be included after options are defined
24
+ include Avro::Builder::Types::NamedErrorHandling
25
+
26
+ def name(value = nil)
27
+ if value.nil?
28
+ @name || "__#{name_fragment}_#{avro_type_name}"
29
+ else
30
+ type_name_instead_of_name_error!
31
+ end
32
+ end
33
+
34
+ def namespace(value = nil)
35
+ if value.nil?
36
+ @namespace
37
+ else
38
+ type_namespace_instead_of_namespace_error!
39
+ end
40
+ end
41
+
24
42
  def validate!
25
43
  required_attribute_error!(:name) if field.nil? && @name.nil?
26
44
  end
@@ -43,7 +61,7 @@ module Avro
43
61
  reference_state.definition_or_reference(fullname) do
44
62
  {
45
63
  name: name,
46
- type: type_name,
64
+ type: avro_type_name,
47
65
  namespace: namespace
48
66
  }.merge(overrides).reject { |_, v| v.nil? }
49
67
  end
@@ -55,7 +73,7 @@ module Avro
55
73
  def to_h(_reference_state, overrides: {})
56
74
  {
57
75
  name: name,
58
- type: type_name,
76
+ type: avro_type_name,
59
77
  namespace: namespace,
60
78
  aliases: aliases
61
79
  }.merge(overrides).reject { |_, v| v.nil? }
@@ -11,7 +11,7 @@ module Avro
11
11
  dsl_attribute_alias :type_doc, :doc
12
12
 
13
13
  def initialize(name = nil, options: {}, cache:, field: nil, &block)
14
- @type_name = :record
14
+ @avro_type_name = :record
15
15
  @name = name
16
16
  @cache = cache
17
17
  @field = field
@@ -25,12 +25,12 @@ module Avro
25
25
  end
26
26
 
27
27
  # Add a required field to the record
28
- def required(name, type_name, options = {}, &block)
28
+ def required(name, avro_type_name, options = {}, &block)
29
29
  new_field = Avro::Builder::Field.new(name: name,
30
- type_name: type_name,
30
+ avro_type_name: avro_type_name,
31
31
  record: self,
32
32
  cache: cache,
33
- internal: { namespace: namespace },
33
+ internal: { type_namespace: namespace },
34
34
  options: options,
35
35
  &block)
36
36
  add_field(new_field)
@@ -38,12 +38,12 @@ module Avro
38
38
 
39
39
  # Add an optional field to the record. In Avro this is represented
40
40
  # as a union of null and the type specified here.
41
- def optional(name, type_name, options = {}, &block)
41
+ def optional(name, avro_type_name, options = {}, &block)
42
42
  new_field = Avro::Builder::Field.new(name: name,
43
- type_name: type_name,
43
+ avro_type_name: avro_type_name,
44
44
  record: self,
45
45
  cache: cache,
46
- internal: { namespace: namespace,
46
+ internal: { type_namespace: namespace,
47
47
  optional_field: true },
48
48
  options: options,
49
49
  &block)
@@ -0,0 +1,66 @@
1
+ module Avro
2
+ module Builder
3
+ module Types
4
+
5
+ # This concern is used by types that can be defined at the top-level,
6
+ # i.e. outside a field.
7
+ module TopLevel
8
+
9
+ def self.included(base)
10
+ base.add_option_name :_name
11
+ end
12
+
13
+ # Provide a way to set the name internally for a top-level type.
14
+ def _name=(value)
15
+ @name = value
16
+ end
17
+ private :_name=
18
+
19
+ # Namespace is settable as a top-level option
20
+ attr_writer :namespace
21
+
22
+ module TopLevelErrorHandling
23
+
24
+ # Options disallowed for top-level types.
25
+
26
+ def type_name=(_value)
27
+ name_attribute_error!
28
+ end
29
+
30
+ def type_namespace=(_value)
31
+ namespace_instead_of_type_namespace_error!
32
+ end
33
+
34
+ private
35
+
36
+ def type_aliases=(_value)
37
+ raise AttributeError
38
+ .new("'aliases' must be used instead of 'type_aliases'")
39
+ end
40
+ alias_method :type_aliases, :type_aliases=
41
+
42
+ def name_attribute_error!
43
+ raise AttributeError
44
+ .new("name must be specified as the first argument for #{avro_type_name}")
45
+ end
46
+ alias_method :type_name_instead_of_name_error!, :name_attribute_error!
47
+ private :type_name_instead_of_name_error!
48
+
49
+ def namespace_attribute_error!
50
+ raise AttributeError
51
+ .new("'namespace' must be specified as an option, not via a block")
52
+ end
53
+ alias_method :type_namespace_instead_of_namespace_error!, :namespace_attribute_error!
54
+ private :type_namespace_instead_of_namespace_error!
55
+
56
+ def namespace_instead_of_type_namespace_error!
57
+ raise AttributeError
58
+ .new("'namespace' must be specified as an option instead of 'type_namespace'")
59
+ end
60
+ end
61
+ include TopLevelErrorHandling
62
+ end
63
+
64
+ end
65
+ end
66
+ end
@@ -8,16 +8,16 @@ module Avro
8
8
  include Avro::Builder::DslOptions
9
9
  include Avro::Builder::DslAttributes
10
10
 
11
- attr_reader :type_name
11
+ attr_reader :avro_type_name
12
12
 
13
- def initialize(type_name, cache:, field: nil)
14
- @type_name = type_name
13
+ def initialize(avro_type_name, cache:, field: nil)
14
+ @avro_type_name = avro_type_name
15
15
  @cache = cache
16
16
  @field = field
17
17
  end
18
18
 
19
19
  def serialize(_reference_state)
20
- type_name
20
+ avro_type_name
21
21
  end
22
22
 
23
23
  def namespace
@@ -57,7 +57,7 @@ module Avro
57
57
  private
58
58
 
59
59
  def required_attribute_error!(attribute_name)
60
- raise RequiredAttributeError.new(type: type_name,
60
+ raise RequiredAttributeError.new(type: avro_type_name,
61
61
  attribute: attribute_name,
62
62
  field: field && field.name,
63
63
  name: @name)
@@ -8,11 +8,11 @@ module Avro
8
8
  module TypeReferencer
9
9
  include Avro::Builder::TypeFactory
10
10
 
11
- def create_builtin_or_lookup_named_type(type_name)
12
- if builtin_type?(type_name)
13
- create_builtin_type(type_name, field: field, cache: cache)
11
+ def create_builtin_or_lookup_named_type(avro_type_name)
12
+ if builtin_type?(avro_type_name)
13
+ create_builtin_type(avro_type_name, field: field, cache: cache)
14
14
  else
15
- cache.lookup_named_type(type_name)
15
+ cache.lookup_named_type(avro_type_name)
16
16
  end
17
17
  end
18
18
  end
@@ -9,3 +9,4 @@ require 'avro/builder/types/fixed_type'
9
9
  require 'avro/builder/types/array_type'
10
10
  require 'avro/builder/types/map_type'
11
11
  require 'avro/builder/types/union_type'
12
+ require 'avro/builder/types/top_level'
@@ -1,5 +1,5 @@
1
1
  module Avro
2
2
  module Builder
3
- VERSION = '0.6.0'.freeze
3
+ VERSION = '0.7.0'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: avro-builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Salsify Engineering
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-05-25 00:00:00.000000000 Z
11
+ date: 2016-05-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: avro
@@ -133,6 +133,7 @@ files:
133
133
  - ".overcommit.yml"
134
134
  - ".rspec"
135
135
  - ".rubocop.yml"
136
+ - ".ruby-version"
136
137
  - ".travis.yml"
137
138
  - CHANGELOG.md
138
139
  - Gemfile
@@ -148,10 +149,13 @@ files:
148
149
  - lib/avro/builder/dsl.rb
149
150
  - lib/avro/builder/dsl_attributes.rb
150
151
  - lib/avro/builder/dsl_options.rb
152
+ - lib/avro/builder/enum.rb
151
153
  - lib/avro/builder/errors.rb
152
154
  - lib/avro/builder/field.rb
153
155
  - lib/avro/builder/file_handler.rb
156
+ - lib/avro/builder/fixed.rb
154
157
  - lib/avro/builder/namespaceable.rb
158
+ - lib/avro/builder/record.rb
155
159
  - lib/avro/builder/schema_serializer_reference_state.rb
156
160
  - lib/avro/builder/type_factory.rb
157
161
  - lib/avro/builder/types.rb
@@ -161,8 +165,10 @@ files:
161
165
  - lib/avro/builder/types/enum_type.rb
162
166
  - lib/avro/builder/types/fixed_type.rb
163
167
  - lib/avro/builder/types/map_type.rb
168
+ - lib/avro/builder/types/named_error_handling.rb
164
169
  - lib/avro/builder/types/named_type.rb
165
170
  - lib/avro/builder/types/record_type.rb
171
+ - lib/avro/builder/types/top_level.rb
166
172
  - lib/avro/builder/types/type.rb
167
173
  - lib/avro/builder/types/type_referencer.rb
168
174
  - lib/avro/builder/types/union_type.rb
@@ -187,7 +193,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
187
193
  version: '0'
188
194
  requirements: []
189
195
  rubyforge_project:
190
- rubygems_version: 2.4.8
196
+ rubygems_version: 2.5.1
191
197
  signing_key:
192
198
  specification_version: 4
193
199
  summary: Ruby DSL to create Avro schemas