Sha256: 2e1235f1c4445b91c437e9bb843d0f220abea63cec9aaeb5a8aa4866bab73c1e
Contents?: true
Size: 699 Bytes
Versions: 2
Compression:
Stored size: 699 Bytes
Contents
# frozen_string_literal: true require_relative 'forest' require_relative 'path' require_relative 'tree' module KeyTree # KeyTree refinements to core classes module Refinements refine Array do def to_key_forest Forest[*map(&:to_key_wood)] end alias_method :to_key_wood, :to_key_forest def to_key_path Path.new(self) end end refine Hash do def to_key_tree Tree[self] end alias_method :to_key_wood, :to_key_tree end refine String do def to_key_path split('.').to_key_path end end refine Symbol do def to_key_path to_s.to_key_path end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
key_tree-0.6.1 | lib/key_tree/refinements.rb |
key_tree-0.6.0 | lib/key_tree/refinements.rb |