Sha256: 370028d9666da9b8d5447c14e648e35aed1d6a98a5a704c7e9a3d50d561aca12

Contents?: true

Size: 632 Bytes

Versions: 2

Compression:

Stored size: 632 Bytes

Contents

# frozen_string_literal: true

module KDoc
  # Utility helper methods for KDoc
  class Util
    # Build a unique key so that resources of the same key do not conflict with
    # one another across projects, namespaces or types
    #
    # @param [String] param_name Param description
    def build_unique_key(key, type = nil, namespace = nil, project_key = nil)
      raise KDoc::Error, 'key is required when generating unique key' if key.nil? || key.empty?

      type ||= KDoc.opinion.default_document_type

      keys = [project_key, namespace, key, type].reject { |k| k.nil? || k == '' }

      keys.join('_')
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
k_doc-0.0.11 lib/k_doc/util.rb
k_doc-0.0.10 lib/k_doc/util.rb