Class: SBOM::CycloneDX::Validator::RecordValidator

Inherits:
BaseValidator
  • Object
show all
Defined in:
lib/sbom/cyclone_dx/validator/record_validator.rb,
sig/sbom/cyclone_dx/validator/record_validator.rbs

Constant Summary

Constants inherited from BaseValidator

BaseValidator::INVALID_TYPE, BaseValidator::MISSING_REQUIRED

Instance Method Summary collapse

Methods inherited from BaseValidator

#const?, #raw_types, #required?

Constructor Details

#initialize(type:, required: false) ⇒ RecordValidator

Returns a new instance of RecordValidator.

Parameters:



10
11
12
13
14
# File 'lib/sbom/cyclone_dx/validator/record_validator.rb', line 10

def initialize(type:, required: false)
  super(type, required: required)

  @record_type = type
end

Instance Method Details

#valid? ⇒ Boolean

Parameters:

  • (Object)

Returns:

  • (Boolean)


8
# File 'sig/sbom/cyclone_dx/validator/record_validator.rbs', line 8

def valid?: (untyped) -> bool

#validate(value) ⇒ Object



16
17
18
19
20
21
22
# File 'lib/sbom/cyclone_dx/validator/record_validator.rb', line 16

def validate(value)
  rv = super
  return rv unless value.is_a?(@record_type)

  rv += value.valid? ? [] : value.formatted_errors
  rv.compact
end