Class: Typeguard::Validation::Base
- Inherits:
-
Object
- Object
- Typeguard::Validation::Base
show all
- Defined in:
- lib/typeguard/types.rb
Direct Known Subclasses
Basic, Duck, Fixed, FixedHash, Generic, GenericHash, Literal, Nil, Union, UnionOf, Untyped
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.from(node) ⇒ Object
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# File 'lib/typeguard/types.rb', line 6
def self.from(node)
case node.shape
when :basic
Basic.new(node)
when :generic
Generic.new(node)
when :fixed
Fixed.new(node)
when :hash
GenericHash.new(node)
when :fixed_hash
FixedHash.new(node)
when :union
Union.new(node)
when :literal
case node.kind
when :nil then Nil.new
when :void, :self then Untyped.new
else Literal.new(node)
end
when :duck
Duck.new(node)
when :untyped
Untyped.new
else
raise "Unexpected type node shape: #{node.shape}"
end
end
|
Instance Method Details
#valid?(_value) ⇒ Boolean
35
36
37
|
# File 'lib/typeguard/types.rb', line 35
def valid?(_value)
raise NotImplementedError, 'Abstract'
end
|