Top Level Namespace

Defined Under Namespace

Modules: TypedArray, ValidArray

Instance Method Summary collapse

Instance Method Details

#TypedArray(*types_allowed) ⇒ Object

Provide a factory method. Takes any number of types to accept as arguments and returns a class that behaves as a type-enforced array.



52
53
54
55
56
57
58
59
60
61
# File 'lib/typed-array.rb', line 52

def TypedArray(*types_allowed)
  klass = Class.new( Array )
  klass.class_exec(types_allowed) do |types_allowed|
    extend ValidArray
    extend TypedArray
    
    restricted_types *types_allowed
  end
  klass
end