NEEDS DOCUMENTATION
Only use this if you do not want the XML declaration to be written; this object is ignored by the XML writer. Otherwise, instantiate your own XMLDecl and add it to the document.
Note that XML 1.1 documents must include an XML declaration
# File rexml-3.2.5/lib/rexml/xmldecl.rb, line 92
def XMLDecl.default
rv = XMLDecl.new( "1.0" )
rv.nowrite
rv
end
# File rexml-3.2.5/lib/rexml/xmldecl.rb, line 20
def initialize(version=DEFAULT_VERSION, encoding=nil, standalone=nil)
@writethis = true
@writeencoding = !encoding.nil?
if version.kind_of? XMLDecl
super()
@version = version.version
self.encoding = version.encoding
@writeencoding = version.writeencoding
@standalone = version.standalone
@writethis = version.writethis
else
super()
@version = version
self.encoding = encoding
@standalone = standalone
end
@version = DEFAULT_VERSION if @version.nil?
end
# File rexml-3.2.5/lib/rexml/xmldecl.rb, line 56
def ==( other )
other.kind_of?(XMLDecl) and
other.version == @version and
other.encoding == self.encoding and
other.standalone == @standalone
end
# File rexml-3.2.5/lib/rexml/xmldecl.rb, line 39
def clone
XMLDecl.new(self)
end
# File rexml-3.2.5/lib/rexml/xmldecl.rb, line 102
def dowrite
@writethis = true
end
# File rexml-3.2.5/lib/rexml/xmldecl.rb, line 76
def encoding=( enc )
if enc.nil?
self.old_enc = "UTF-8"
@writeencoding = false
else
self.old_enc = enc
@writeencoding = true
end
self.dowrite
end
# File rexml-3.2.5/lib/rexml/xmldecl.rb, line 106
def inspect
"#{START} ... #{STOP}"
end
# File rexml-3.2.5/lib/rexml/xmldecl.rb, line 69
def node_type
:xmldecl
end
# File rexml-3.2.5/lib/rexml/xmldecl.rb, line 98
def nowrite
@writethis = false
end
Ignored. There must be no whitespace before an XML declaration
Ignored
Ignored
# File rexml-3.2.5/lib/rexml/xmldecl.rb, line 49
def write(writer, indent=-1, transitive=false, ie_hack=false)
return nil unless @writethis or writer.kind_of? Output
writer << START
writer << " #{content encoding}"
writer << STOP
end