Class: XMLRPC::XMLParser::XMLScanStreamParser::XMLScanParser

Inherits:
Object
  • Object
show all
Includes:
StreamParserMixin
Defined in:
lib/xmlrpc/parser.rb

Constant Summary collapse

Entities =
{
  "lt"   => "<",
  "gt"   => ">",
  "amp"  => "&",
  "quot" => '"',
  "apos" => "'"
}

Instance Attribute Summary

Attributes included from StreamParserMixin

#fault, #method_name, #params

Instance Method Summary collapse

Methods included from StreamParserMixin

#character, #endElement, #initialize, #startElement

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(*a) ⇒ Object



805
806
# File 'lib/xmlrpc/parser.rb', line 805

def method_missing(*a)
end

Instance Method Details

#on_cdata(str) ⇒ Object



784
785
786
# File 'lib/xmlrpc/parser.rb', line 784

def on_cdata(str)
  character(str)
end

#on_chardata(str) ⇒ Object



780
781
782
# File 'lib/xmlrpc/parser.rb', line 780

def on_chardata(str)
  character(str)
end

#on_charref(code) ⇒ Object



797
798
799
# File 'lib/xmlrpc/parser.rb', line 797

def on_charref(code)
  character(code.chr)
end

#on_charref_hex(code) ⇒ Object



801
802
803
# File 'lib/xmlrpc/parser.rb', line 801

def on_charref_hex(code)
  character(code.chr)
end

#on_entityref(ent) ⇒ Object



788
789
790
791
792
793
794
795
# File 'lib/xmlrpc/parser.rb', line 788

def on_entityref(ent)
  str = Entities[ent]
  if str
    character(str)
  else
    raise "unknown entity"
  end
end

#on_stag_end(name) ⇒ Object



773
# File 'lib/xmlrpc/parser.rb', line 773

def on_stag_end(name); end

#on_stag_end_empty(name) ⇒ Object



775
776
777
778
# File 'lib/xmlrpc/parser.rb', line 775

def on_stag_end_empty(name)
  startElement(name)
  endElement(name)
end

#parse(str) ⇒ Object



765
766
767
768
# File 'lib/xmlrpc/parser.rb', line 765

def parse(str)
  parser  = XMLScan::XMLParser.new(self)
  parser.parse(str)
end