Class: Finitio::AnyType
Overview
An AnyType generator allows capuring the set of every ruby citizen as a Finitio type.
Any := .
Object is used as concrete representation of the information type as the Ruby ‘Object` class already captures everything.
R(.) = Object
Accordingly, the ‘dress` transformation function has the signature below. Note that dress always succeeds and returns its first argument.
dress :: Alpha -> Object throws TypeError
dress :: Object -> Object throws TypeError
Constant Summary
Constants included from Metadata
Instance Method Summary collapse
- #==(other) ⇒ Object (also: #eql?)
- #default_name ⇒ Object
- #dress(value, handler = nil) ⇒ Object
- #hash ⇒ Object
- #include?(value) ⇒ Boolean
-
#initialize(name = nil, metadata = nil) ⇒ AnyType
constructor
A new instance of AnyType.
- #representator ⇒ Object
Methods inherited from Type
#anonymous?, #name, #name=, #named?, #to_s
Methods included from Metadata
#metadata, #metadata=, #metadata?
Constructor Details
#initialize(name = nil, metadata = nil) ⇒ AnyType
Returns a new instance of AnyType.
21 22 23 |
# File 'lib/finitio/type/any_type.rb', line 21 def initialize(name = nil, = nil) super(name, ) end |
Instance Method Details
#==(other) ⇒ Object Also known as: eql?
41 42 43 |
# File 'lib/finitio/type/any_type.rb', line 41 def ==(other) super || other.is_a?(AnyType) end |
#default_name ⇒ Object
25 26 27 |
# File 'lib/finitio/type/any_type.rb', line 25 def default_name "Any" end |
#dress(value, handler = nil) ⇒ Object
37 38 39 |
# File 'lib/finitio/type/any_type.rb', line 37 def dress(value, handler = nil) value end |
#hash ⇒ Object
46 47 48 |
# File 'lib/finitio/type/any_type.rb', line 46 def hash self.class.hash ^ 37 end |
#include?(value) ⇒ Boolean
33 34 35 |
# File 'lib/finitio/type/any_type.rb', line 33 def include?(value) true end |
#representator ⇒ Object
29 30 31 |
# File 'lib/finitio/type/any_type.rb', line 29 def representator Object end |