@private
# File lib/aws/core/xml_grammar.rb, line 464 def initialize context, customizations @context = context @customizations = customizations end
# File lib/aws/core/xml_grammar.rb, line 496 def characters chars @frame.add_text(chars) if @frame end
# File lib/aws/core/xml_grammar.rb, line 486 def end_element name @frame.close if @frame.parent_frame child_frame = @frame parent_frame = @frame.parent_frame parent_frame.consume_child_frame(child_frame) end @frame = @frame.parent_frame end
# File lib/aws/core/xml_grammar.rb, line 469 def start_element element_name, attrs if @frame @frame = @frame.build_child_frame(element_name) else @frame = RootFrame.new(@context, @customizations) end # consume attributes the same way we consume nested xml elements attrs.each do |(attr_name, attr_value)| attr_frame = @frame.build_child_frame(attr_name) attr_frame.add_text(attr_value) @frame.consume_child_frame(attr_frame) end end