class Jumunge::JuOther
Public Class Methods
new(object, trail, trails)
click to toggle source
# File lib/jumunge.rb, line 62 def initialize(object, trail, trails) @object = object @trail = trail @trails = trails end
Public Instance Methods
perform()
click to toggle source
# File lib/jumunge.rb, line 68 def perform @object[key_name] = empty_value unless @object.key? key_name @object[key_name] = deep_applied_value if @trails.size.positive? @object end
Private Instance Methods
deep_applied_value()
click to toggle source
# File lib/jumunge.rb, line 84 def deep_applied_value Jumunge.new(@object[key_name], remaining_trails).perform end
empty_value()
click to toggle source
# File lib/jumunge.rb, line 80 def empty_value {} end
key_name()
click to toggle source
# File lib/jumunge.rb, line 76 def key_name @trail end
remaining_trails()
click to toggle source
# File lib/jumunge.rb, line 88 def remaining_trails @remaining_trails ||= @trails.join('.') end