Class: SBOM::CycloneDX::Validator::FloatValidator
- Inherits:
-
BaseValidator
- Object
- BaseValidator
- SBOM::CycloneDX::Validator::FloatValidator
- Defined in:
- lib/sbom/cyclone_dx/validator/float_validator.rb,
sig/sbom/cyclone_dx/validator/float_validator.rbs
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.
- #valid? ⇒ Boolean
- #validate(value) ⇒ Object
Methods inherited from BaseValidator
#const?, #raw_types, #required?
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
#valid? ⇒ Boolean
8 |
# File 'sig/sbom/cyclone_dx/validator/float_validator.rbs', line 8 def valid?: (untyped) -> bool |
#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 |