Class: T::Types::TypedArray

Inherits:
TypedEnumerable show all
Defined in:
lib/types/types/typed_array.rb

Direct Known Subclasses

Untyped

Defined Under Namespace

Modules: Private Classes: Untyped

Instance Attribute Summary

Attributes inherited from TypedEnumerable

#type

Instance Method Summary collapse

Methods inherited from TypedEnumerable

#describe_obj, #initialize

Methods inherited from Base

#==, #describe_obj, #error_message_for_obj, #error_message_for_obj_recursive, #hash, method_added, #subtype_of?, #to_s, #validate!

Constructor Details

This class inherits a constructor from T::Types::TypedEnumerable

Instance Method Details

#nameObject

overrides Base



7
8
9
# File 'lib/types/types/typed_array.rb', line 7

def name
  "T::Array[#{@type.name}]"
end

#new(*args) ⇒ Object



25
26
27
# File 'lib/types/types/typed_array.rb', line 25

def new(*args)
  Array.new(*T.unsafe(args))
end

#recursively_valid?(obj) ⇒ Boolean

overrides Base

Returns:



16
17
18
# File 'lib/types/types/typed_array.rb', line 16

def recursively_valid?(obj)
  obj.is_a?(Array) && super
end

#underlying_classObject



11
12
13
# File 'lib/types/types/typed_array.rb', line 11

def underlying_class
  Array
end

#valid?(obj) ⇒ Boolean

overrides Base

Returns:



21
22
23
# File 'lib/types/types/typed_array.rb', line 21

def valid?(obj)
  obj.is_a?(Array)
end