Class XTemplate::XMLVisitor
In: lib/xtemplate/xml.rb
Parent: Object

Methods

Included Modules

Util XNodeManager

Public Class methods

[Source]

# File lib/xtemplate/xml.rb, line 84
    def initialize
      init_root()
      #@orig_kcode = $KCODE
    end

Public Instance methods

[Source]

# File lib/xtemplate/xml.rb, line 202
    def on_attr_charref(code)
      push_attrval("&\##{code};")
    end

[Source]

# File lib/xtemplate/xml.rb, line 206
    def on_attr_charref_hex(code)
      push_attrval("&\#x#{'%x' % code};")
    end

[Source]

# File lib/xtemplate/xml.rb, line 198
    def on_attr_entityref(ref)
      push_attrval("&#{ref};")
    end

[Source]

# File lib/xtemplate/xml.rb, line 194
    def on_attr_value(str)
      push_attrval(str)
    end

[Source]

# File lib/xtemplate/xml.rb, line 190
    def on_attribute(name)
      push_attr(name)
    end

[Source]

# File lib/xtemplate/xml.rb, line 210
    def on_attribute_end(name)
    end

[Source]

# File lib/xtemplate/xml.rb, line 166
    def on_cdata(str)
      push_content("<![CDATA[#{str}]]>")
    end

[Source]

# File lib/xtemplate/xml.rb, line 162
    def on_chardata(str)
      push_content(str)
    end

[Source]

# File lib/xtemplate/xml.rb, line 174
    def on_charref(code)
      push_content("&\##{code};")
    end

[Source]

# File lib/xtemplate/xml.rb, line 178
    def on_charref_hex(code)
      push_content("&\#x#{'%x' % code};")
    end

[Source]

# File lib/xtemplate/xml.rb, line 154
    def on_comment(str)
      push_content("<!--#{str}-->")
    end

[Source]

# File lib/xtemplate/xml.rb, line 133
    def on_doctype(root,pubid,sysid)
      if( pubid )
        if( sysid )
          push_content("<!DOCTYPE #{root} PUBLIC \"#{pubid}\" \"#{sysid}\">")
        else
          push_content("<!DOCTYPE #{root} PUBLIC \"#{pubid}\">")
        end
      else
        if( sysid )
          push_content("<!DOCTYPE #{root} SYSTEM \"#{sysid}\">")
        else
          push_content("<!DOCTYPE #{root}>")
        end
      end
      push_content(NEWLINE)
    end

[Source]

# File lib/xtemplate/xml.rb, line 185
    def on_end_document
      #@root.add_child(NEWLINE)
      #$KCODE = @orig_kcode
    end

[Source]

# File lib/xtemplate/xml.rb, line 170
    def on_entityref(ref)
      push_content("&#{ref};")
    end

[Source]

# File lib/xtemplate/xml.rb, line 225
    def on_etag(name)
      pop_node()
    end

[Source]

# File lib/xtemplate/xml.rb, line 158
    def on_pi(target, pi)
      push_pi(target,pi)
    end

[Source]

# File lib/xtemplate/xml.rb, line 150
    def on_prolog_space(str)
      push_content(str)
    end

[Source]

# File lib/xtemplate/xml.rb, line 213
    def on_stag(name)
      push_tag(name)
    end

[Source]

# File lib/xtemplate/xml.rb, line 222
    def on_stag_end(name)
    end

[Source]

# File lib/xtemplate/xml.rb, line 217
    def on_stag_end_empty(name)
      on_stag_end(name)
      on_etag(name)
    end

[Source]

# File lib/xtemplate/xml.rb, line 182
    def on_start_document
    end

[Source]

# File lib/xtemplate/xml.rb, line 108
    def on_xmldecl
      push_content("<?xml")
    end

[Source]

# File lib/xtemplate/xml.rb, line 116
    def on_xmldecl_encoding(str)
      #$KCODE = str
      push_content(" encoding=\"#{str}\"")
    end

[Source]

# File lib/xtemplate/xml.rb, line 129
    def on_xmldecl_end
      push_content("?>", NEWLINE)
    end

[Source]

# File lib/xtemplate/xml.rb, line 125
    def on_xmldecl_other(name,value)
      push_content(" #{name}=\"#{value}\"")
    end

[Source]

# File lib/xtemplate/xml.rb, line 121
    def on_xmldecl_standalone(str)
      push_content(" standalone=\"#{str}\"")
    end

[Source]

# File lib/xtemplate/xml.rb, line 112
    def on_xmldecl_version(str)
      push_content(" version=\"#{str}\"")
    end

[Source]

# File lib/xtemplate/xml.rb, line 93
    def parse_error(msg)
      raise(RuntimeError, "%s:%d:%s" % [@parser.path, @parser.lineno, msg])
    end

[Source]

# File lib/xtemplate/xml.rb, line 89
    def set_parser(x)
      @parser = x
    end

[Source]

# File lib/xtemplate/xml.rb, line 101
    def valid_error(msg)
      raise(RuntimeError, "%s:%d:%s" % [@parser.path, @parser.lineno, msg])
    end

[Source]

# File lib/xtemplate/xml.rb, line 105
    def warning(msg)
    end

[Source]

# File lib/xtemplate/xml.rb, line 97
    def wellformed_error(msg)
      raise(RuntimeError, "%s:%d:%s" % [@parser.path, @parser.lineno, msg])
    end

[Validate]