An ActiveSupport style utility library that employs delegation instead of monkey patching
MIT License
An ActiveSupport style utility library that employs delegation instead of monkey patching.
Footing employs some principles of immutability that are common in functional programming. The integrity of original objects/data is preserved because Footing creates a deep copy by default.
NOTE: This behavior can be overridden to improve performance... just be sure you know what you're doing
Recursively filter out unwanted values based on key.
data = { name: "Joe", password: "secret" }
copy = Footing::Hash.new(data)
copy.filter!(:password)
copy.inner_object # => {:name=>"Joe", :password=>"[FILTERED]"}