Class: Cocina::Models::Validators::BaseDescriptionVisitorValidator

Inherits:
Object
  • Object
show all
Defined in:
lib/cocina/models/validators/base_description_visitor_validator.rb

Overview

Super class for description validators that use a visitor pattern.

Instance Method Summary collapse

Instance Method Details

#path_to_s(path) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/cocina/models/validators/base_description_visitor_validator.rb', line 17

def path_to_s(path)
  # This matches the format used by descriptive spreadsheets
  path_str = ''
  path.each_with_index do |part, index|
    if part.is_a?(Integer)
      path_str += (part + 1).to_s
    else
      path_str += '.' if index.positive?
      path_str += part.to_s
    end
  end
  path_str
end

#validate!Object

Raises:



15
# File 'lib/cocina/models/validators/base_description_visitor_validator.rb', line 15

def validate!; end

#visit_array(array:, path:) ⇒ Object



10
# File 'lib/cocina/models/validators/base_description_visitor_validator.rb', line 10

def visit_array(array:, path:); end

#visit_hash(hash:, path:) ⇒ Object



8
# File 'lib/cocina/models/validators/base_description_visitor_validator.rb', line 8

def visit_hash(hash:, path:); end

#visit_obj(obj:, path:) ⇒ Object



12
# File 'lib/cocina/models/validators/base_description_visitor_validator.rb', line 12

def visit_obj(obj:, path:); end