Sha256: 65954aada463a8acb4edc428a683491d4cda77828d776c297c21323c3d65709e

Contents?: true

Size: 487 Bytes

Versions: 1

Compression:

Stored size: 487 Bytes

Contents

class Typero::Type
  attr_accessor :opts
  attr_accessor :value

  def self.load name
    klass = 'Typero::%sType' % name.to_s.gsub(/[^\w]/,'').classify
    klass.constantize
  end

  ###

  def initialize(value, opts={})
    @value = value
    @opts  = opts
  end

  # default validation for any type
  def validate(what)
    true
  end

  def error_for name
    @opts[name] || send(name)
  end

  def get
    @value
  end

  def set
    @value
  end

  def default
    nil
  end
end


Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
typero-0.4.0 ./lib/typero/type.rb