module Babl::Operators::Dep

Public Class Methods

canonicalize(path) click to toggle source
# File lib/babl/operators/dep.rb, line 7
def self.canonicalize(path)
    case path
    when ::Array then path.reduce(Utils::Hash::EMPTY) { |a, p| a.merge(canonicalize(p)) }
    when ::Hash then path.map { |k, v| [k.dup.freeze, canonicalize(v)] }.to_h
    else { path.dup.freeze => Utils::Hash::EMPTY }
    end
end