class ActiveModel::Serializer::IncludeTree

def [](key)

def [](key)
  # TODO(beauby): Adopt a lazy caching strategy for generating subtrees.
  case
  when @hash.key?(key)
    self.class.new(@hash[key])
  when @hash.key?(:*)
    self.class.new(@hash[:*])
  when @hash.key?(:**)
    self.class.new(:** => {})
  else
    nil
  end
end