Module: ABMeter::Core::Protocol
- Defined in:
- lib/abmeter/core/protocol/type.rb
Defined Under Namespace
Classes: BooleanType, FloatType, IntegerType, StringType, Type, TypeRegistry
Constant Summary
collapse
- STRING =
'String'
- INTEGER =
'Integer'
- FLOAT =
'Float'
- BOOLEAN =
'Boolean'
Class Method Summary
collapse
Class Method Details
.all_types ⇒ Object
141
142
143
|
# File 'lib/abmeter/core/protocol/type.rb', line 141
def all_types
registry.all.map(&:name)
end
|
.boolean ⇒ Object
133
134
135
|
# File 'lib/abmeter/core/protocol/type.rb', line 133
def boolean
type(BOOLEAN)
end
|
.cast!(value, type_name) ⇒ Object
151
152
153
|
# File 'lib/abmeter/core/protocol/type.rb', line 151
def cast!(value, type_name)
type(type_name).cast!(value)
end
|
.float ⇒ Object
129
130
131
|
# File 'lib/abmeter/core/protocol/type.rb', line 129
def float
type(FLOAT)
end
|
.integer ⇒ Object
125
126
127
|
# File 'lib/abmeter/core/protocol/type.rb', line 125
def integer
type(INTEGER)
end
|
.numerical?(type_name) ⇒ Boolean
145
146
147
148
149
|
# File 'lib/abmeter/core/protocol/type.rb', line 145
def numerical?(type_name)
type(type_name).numerical?
rescue StandardError
false
end
|
.string ⇒ Object
121
122
123
|
# File 'lib/abmeter/core/protocol/type.rb', line 121
def string
type(STRING)
end
|
.type(name) ⇒ Object
137
138
139
|
# File 'lib/abmeter/core/protocol/type.rb', line 137
def type(name)
registry.get(name)
end
|
.valid_for_type?(value, type_name) ⇒ Boolean
155
156
157
158
159
160
|
# File 'lib/abmeter/core/protocol/type.rb', line 155
def valid_for_type?(value, type_name)
cast!(value, type_name)
true
rescue ArgumentError
false
end
|