Sha256: 16465e90c6ac2c7e7684066501353719b91fd2174ef9cf7e1e9c0a6639302635

Contents?: true

Size: 1.78 KB

Versions: 1

Compression:

Stored size: 1.78 KB

Contents

require 'set'
require 'date'
require 'time'
require 'bigdecimal'
require 'bigdecimal/util'

# Base module which adds Attribute API to your classes
module Virtus

  # Represents an undefined parameter used by auto-generated option methods
  Undefined = Object.new.freeze

  # Extends base class with class and instance methods
  #
  # @param [Class] descendant
  #
  # @return [undefined]
  #
  # @api private
  def self.included(descendant)
    super
    descendant.extend(ClassMethods)
    descendant.send(:include, InstanceMethods)
  end

  private_class_method :included

end # module Virtus

require 'virtus/support/descendants_tracker'
require 'virtus/support/type_lookup'
require 'virtus/support/options'

require 'virtus/class_methods'
require 'virtus/instance_methods'

require 'virtus/attribute_set'

require 'virtus/coercion'
require 'virtus/coercion/object'
require 'virtus/coercion/numeric'
require 'virtus/coercion/integer'
require 'virtus/coercion/float'
require 'virtus/coercion/decimal'
require 'virtus/coercion/false_class'
require 'virtus/coercion/true_class'
require 'virtus/coercion/hash'
require 'virtus/coercion/time_coercions'
require 'virtus/coercion/date'
require 'virtus/coercion/date_time'
require 'virtus/coercion/time'
require 'virtus/coercion/string'
require 'virtus/coercion/symbol'

require 'virtus/attribute/default_value'
require 'virtus/attribute'
require 'virtus/attribute/object'
require 'virtus/attribute/class'
require 'virtus/attribute/array'
require 'virtus/attribute/boolean'
require 'virtus/attribute/date'
require 'virtus/attribute/date_time'
require 'virtus/attribute/numeric'
require 'virtus/attribute/decimal'
require 'virtus/attribute/float'
require 'virtus/attribute/hash'
require 'virtus/attribute/integer'
require 'virtus/attribute/string'
require 'virtus/attribute/time'

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
virtus-0.0.10 lib/virtus.rb