Class: SBOM::CycloneDX::Field::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/sbom/cyclone_dx/field.rb

Direct Known Subclasses

ConstBase, PropBase

Class Attribute Summary collapse

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeBase

Returns a new instance of Base.



21
22
23
# File 'lib/sbom/cyclone_dx/field.rb', line 21

def initialize
  raise "Cannot instantiate abstract Field"
end

Class Attribute Details

.constObject (readonly)

Returns the value of attribute const.



46
47
48
# File 'lib/sbom/cyclone_dx/field.rb', line 46

def const
  @const
end

.field_nameObject (readonly)

Returns the value of attribute field_name.



46
47
48
# File 'lib/sbom/cyclone_dx/field.rb', line 46

def field_name
  @field_name
end

.json_nameObject (readonly)

Returns the value of attribute json_name.



46
47
48
# File 'lib/sbom/cyclone_dx/field.rb', line 46

def json_name
  @json_name
end

.validatorObject (readonly)

Returns the value of attribute validator.



46
47
48
# File 'lib/sbom/cyclone_dx/field.rb', line 46

def validator
  @validator
end

Instance Attribute Details

#errorsObject (readonly)

Returns the value of attribute errors.



19
20
21
# File 'lib/sbom/cyclone_dx/field.rb', line 19

def errors
  @errors
end

#valueObject (readonly)

Returns the value of attribute value.



19
20
21
# File 'lib/sbom/cyclone_dx/field.rb', line 19

def value
  @value
end

Class Method Details

.const?Boolean

Returns:

  • (Boolean)


52
53
54
# File 'lib/sbom/cyclone_dx/field.rb', line 52

def const?
  @const_present
end

.defaultObject



56
57
58
59
60
61
62
# File 'lib/sbom/cyclone_dx/field.rb', line 56

def default
  # Skip type-checking here because it is already checked, and Steep is cranky about these
  default_value = _ = @default
  return default_value unless default_value.is_a?(Proc)

  default_value.call
end

.default?Boolean

Returns:

  • (Boolean)


64
65
66
# File 'lib/sbom/cyclone_dx/field.rb', line 64

def default?
  @default_present
end

.required?Boolean

Returns:

  • (Boolean)


48
49
50
# File 'lib/sbom/cyclone_dx/field.rb', line 48

def required?
  validator.required?
end

Instance Method Details

#valid?Boolean

Returns:

  • (Boolean)


29
30
31
32
# File 'lib/sbom/cyclone_dx/field.rb', line 29

def valid?
  @errors = validator.validate(value)
  @errors.empty?
end

#value?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/sbom/cyclone_dx/field.rb', line 25

def value?
  @value.nil?
end