Class: SBOM::CycloneDX::Validator::FloatValidator
- Inherits:
-
BaseValidator
- Object
- BaseValidator
- SBOM::CycloneDX::Validator::FloatValidator
- Defined in:
- lib/sbom/cyclone_dx/validator/float_validator.rb
Constant Summary
Constants inherited from BaseValidator
BaseValidator::INVALID_TYPE, BaseValidator::MISSING_REQUIRED
Instance Method Summary collapse
-
#initialize(maximum: nil, minimum: nil, required: false) ⇒ FloatValidator
constructor
A new instance of FloatValidator.
- #validate(value) ⇒ Object
Methods inherited from BaseValidator
#raw_types, #required?, #valid?
Constructor Details
#initialize(maximum: nil, minimum: nil, required: false) ⇒ FloatValidator
Returns a new instance of FloatValidator.
10 11 12 13 14 15 16 17 18 |
# File 'lib/sbom/cyclone_dx/validator/float_validator.rb', line 10 def initialize(maximum: nil, minimum: nil, required: false) if maximum && minimum && maximum < minimum raise ArgumentError, "maximum must be greater than or equal to minimum" end super(Float, required: required) @range = (minimum..maximum) end |
Instance Method Details
#validate(value) ⇒ Object
20 21 22 23 24 25 26 |
# File 'lib/sbom/cyclone_dx/validator/float_validator.rb', line 20 def validate(value) rv = super return rv unless value.is_a?(Float) rv << "Value is not within range" unless @range.cover?(value) rv end |