NEEDS DOCUMENTATION

Methods
#
C
D
E
I
N
O
W
X
Included Modules
Constants
DEFAULT_VERSION = "1.0";
 
DEFAULT_ENCODING = "UTF-8";
 
DEFAULT_STANDALONE = "no";
 
START = '<\?xml';
 
STOP = '\?>';
 
Attributes
[RW] stand_alone?
[RW] standalone
[RW] version
[R] writeencoding
[R] writethis
Class Public methods
default()

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)
# 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
Instance Public methods
==( other )
# 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()
# File lib/rexml/xmldecl.rb, line 36
def clone
  XMLDecl.new(self)
end
dowrite()
# File lib/rexml/xmldecl.rb, line 99
def dowrite
  @writethis = true
end
encoding=( enc )
Also aliased as: old_enc=
# 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
inspect()
# File lib/rexml/xmldecl.rb, line 103
def inspect
  START.sub(/\/u, '') + " ... " + STOP.sub(/\/u, '')
end
node_type()
# File lib/rexml/xmldecl.rb, line 66
def node_type
  :xmldecl
end
nowrite()
# File lib/rexml/xmldecl.rb, line 95
def nowrite
  @writethis = false
end
old_enc=( enc )
Alias for: encoding=
write(writer, indent=-1, transitive=false, ie_hack=false)
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)
# File lib/rexml/xmldecl.rb, line 60
def xmldecl version, encoding, standalone
  @version = version
  self.encoding = encoding
  @standalone = standalone
end