class REXML::XMLDecl
NEEDS DOCUMENTATION
Constants
- DEFAULT_ENCODING
- DEFAULT_STANDALONE
- DEFAULT_VERSION
- START
- STOP
Attributes
stand_alone?[RW]
standalone[RW]
version[RW]
writeencoding[R]
writethis[R]
Public Class Methods
default()
click to toggle source
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 lib/rexml/xmldecl.rb, line 89 def XMLDecl.default rv = XMLDecl.new( "1.0" ) rv.nowrite rv end
new(version=DEFAULT_VERSION, encoding=nil, standalone=nil)
click to toggle source
Calls superclass method
REXML::Child.new
# File lib/rexml/xmldecl.rb, line 18 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 else super() @version = version self.encoding = encoding @standalone = standalone end @version = DEFAULT_VERSION if @version.nil? end
Public Instance Methods
==( other )
click to toggle source
# File lib/rexml/xmldecl.rb, line 53 def ==( other ) other.kind_of?(XMLDecl) and other.version == @version and other.encoding == self.encoding and other.standalone == @standalone end
clone()
click to toggle source
# File lib/rexml/xmldecl.rb, line 36 def clone XMLDecl.new(self) end
dowrite()
click to toggle source
# File lib/rexml/xmldecl.rb, line 99 def dowrite @writethis = true end
encoding=( enc )
click to toggle source
# File lib/rexml/xmldecl.rb, line 73 def encoding=( enc ) if enc.nil? self.old_enc = "UTF-8" @writeencoding = false else self.old_enc = enc @writeencoding = true end self.dowrite end
Also aliased as: old_enc=
inspect()
click to toggle source
# File lib/rexml/xmldecl.rb, line 103 def inspect START.sub(/\/u, '') + " ... " + STOP.sub(/\/u, '') end
node_type()
click to toggle source
# File lib/rexml/xmldecl.rb, line 66 def node_type :xmldecl end
nowrite()
click to toggle source
# File lib/rexml/xmldecl.rb, line 95 def nowrite @writethis = false end
write(writer, indent=-1, transitive=false, ie_hack=false)
click to toggle source
- indent
-
Ignored. There must be no whitespace before an XML declaration
- transitive
-
Ignored
- ie_hack
-
Ignored
# File lib/rexml/xmldecl.rb, line 46 def write(writer, indent=-1, transitive=false, ie_hack=false) return nil unless @writethis or writer.kind_of? Output writer << START.sub(/\/u, '') writer << " #{content encoding}" writer << STOP.sub(/\/u, '') end
xmldecl(version, encoding, standalone)
click to toggle source
# File lib/rexml/xmldecl.rb, line 60 def xmldecl version, encoding, standalone @version = version self.encoding = encoding @standalone = standalone end
Private Instance Methods
content(enc)
click to toggle source
# File lib/rexml/xmldecl.rb, line 108 def content(enc) rv = "version='#@version'" rv << " encoding='#{enc}'" if @writeencoding || enc !~ /\Autf-8\z/i rv << " standalone='#@standalone'" if @standalone rv end