class AWS::Core::XML::Frame

def initialize root_frame, parent_frame, element_name, rules

def initialize root_frame, parent_frame, element_name, rules
  @root_frame = root_frame
  @parent_frame = parent_frame
  @element_name = element_name
  @rules = rules
  @rules[:children] ||= {}
  @data = {}.merge(rules[:defaults] || {})
  @text = nil
  # initialize values for child frames of special types (e.g.
  # lists, maps, and forced elements)
  known_child_frames.each do |child_frame|
    context = data_context_for(child_frame)
    if child_frame.list?
      context[child_frame.ruby_name] = []
    elsif child_frame.map?
      context[child_frame.ruby_name] = {}
    elsif child_frame.forced?
      context[child_frame.ruby_name] = child_frame.value
    end
  end
end