Module: Defmastership::Modifier::UpdateDefVersion::Helper

Defined in:
lib/defmastership/modifier/update_def_version.rb

Overview

Helper functions

Class Method Summary collapse

Class Method Details

.def_from_match(doc, match) ⇒ Definition

Returns the definition from a Document with a matching reference.

Parameters:

  • doc (Document)

    the document with defintions

  • match (MatchData)

    Regexp match matching a reference

Returns:

  • (Definition)

    the definition from a Document with a matching reference



85
86
87
# File 'lib/defmastership/modifier/update_def_version.rb', line 85

def self.def_from_match(doc, match)
  doc.ref_to_def(match[:reference])
end

.normalilize_config!(config) ⇒ Object

Make sure that ref_document configuration is an Array

Parameters:

  • config (YAML)

    the definition from the reference document



103
104
105
106
# File 'lib/defmastership/modifier/update_def_version.rb', line 103

def self.normalilize_config!(config)
  ref_docs = config.fetch(:ref_document)
  config[:ref_document] = [ref_docs] if ref_docs.instance_of?(String)
end

.ref_version(ref_definition, definition, first_version) ⇒ String

Returns the current definition version.

Parameters:

  • ref_definition (Definition)

    the definition from the reference document

  • definition (Definition)

    the definition from the current document

  • first_version (String)

    first version from configuration

Returns:

  • (String)

    the current definition version



93
94
95
96
97
98
# File 'lib/defmastership/modifier/update_def_version.rb', line 93

def self.ref_version(ref_definition, definition, first_version)
  new_ref_version = ref_definition.explicit_version
  return new_ref_version if definition.sha256_short == ref_definition.sha256_short

  new_ref_version ? new_ref_version.next : first_version
end