class Aws::Xml::Parser
A SAX-style XML parser that uses a shape context to handle types.
def engine
-
(Class)
- Returns the default parsing engine.
def engine @engine end
def engine= engine
-
engine
(Symbol, Class
) --
def engine= engine @engine = Class === engine ? engine : load_engine(engine) end
def initialize(rules, options = {})
-
rules
(Seahorse::Model::ShapeRef
) --
def initialize(rules, options = {}) @rules = rules @engine = options[:engine] || self.class.engine end
def load_engine(name)
def load_engine(name) require "aws-sdk-core/xml/parser/engines/#{name}" const_name = name[0].upcase + name[1..-1] + 'Engine' const_get(const_name) end
def parse(xml, target = nil)
-
(Structure)
-
Parameters:
-
target
(Structure
) -- (nil) -
xml
(String
) -- An XML document string to parse.
def parse(xml, target = nil) xml = '<xml/>' if xml.nil? or xml.empty? stack = Stack.new(@rules, target) @engine.new(stack).parse(xml.to_s) stack.result end
def try_load_engine(name)
def try_load_engine(name) load_engine(name) rescue LoadError false end