Sha256: 22cf17c18252844c476dc8d87a210d08503e7278eb96ac4e0f672a8378b1623d

Contents?: true

Size: 500 Bytes

Versions: 8

Compression:

Stored size: 500 Bytes

Contents

module Nylas
  module Model
    # Define a particular attribute for a given model
    class AttributeDefinition
      extend Forwardable
      def_delegators :type, :cast, :serialize
      attr_accessor :type_name, :exclude_when, :default
      def initialize(type_name:, exclude_when:, default:)
        self.type_name = type_name
        self.exclude_when = exclude_when
        self.default = default
      end

      private def type
        Types.registry[type_name]
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
nylas-4.2.4 lib/nylas/model/attribute_definition.rb
nylas-4.2.3 lib/nylas/model/attribute_definition.rb
nylas-4.2.2 lib/nylas/model/attribute_definition.rb
nylas-4.2.1 lib/nylas/model/attribute_definition.rb
nylas-4.0.1 lib/nylas/model/attribute_definition.rb
nylas-4.2.0 lib/nylas/model/attribute_definition.rb
nylas-4.0.0.rc3 lib/nylas/model/attribute_definition.rb
nylas-4.0.0.rc2 lib/nylas/model/attribute_definition.rb