Class: REXML::XMLDecl
- Includes:
- Encoding
- Defined in:
- lib/rexml/xmldecl.rb
Overview
NEEDS DOCUMENTATION
Constant Summary collapse
- DEFAULT_VERSION =
"1.0"
- DEFAULT_ENCODING =
"UTF-8"
- DEFAULT_STANDALONE =
"no"
- START =
"<?xml"
- STOP =
"?>"
Instance Attribute Summary collapse
-
#standalone ⇒ Object
(also: #stand_alone?)
Returns the value of attribute standalone.
-
#version ⇒ Object
Returns the value of attribute version.
-
#writeencoding ⇒ Object
readonly
Returns the value of attribute writeencoding.
-
#writethis ⇒ Object
readonly
Returns the value of attribute writethis.
Attributes included from Encoding
Attributes inherited from Child
Class Method Summary collapse
-
.default ⇒ Object
Only use this if you do not want the XML declaration to be written; this object is ignored by the XML writer.
Instance Method Summary collapse
- #==(other) ⇒ Object
- #clone ⇒ Object
- #dowrite ⇒ Object
- #encoding=(enc) ⇒ Object
-
#initialize(version = DEFAULT_VERSION, encoding = nil, standalone = nil) ⇒ XMLDecl
constructor
A new instance of XMLDecl.
- #inspect ⇒ Object
- #node_type ⇒ Object
- #nowrite ⇒ Object
- #old_enc= ⇒ Object
-
#write(writer, indent = -1,, transitive = false, ie_hack = false) ⇒ Object
- indent
-
Ignored.
- #xmldecl(version, encoding, standalone) ⇒ Object
Methods included from Encoding
Methods inherited from Child
#bytes, #document, #next_sibling=, #previous_sibling=, #remove, #replace_with
Methods included from Node
#each_recursive, #find_first_recursive, #indent, #index_in_parent, #next_sibling_node, #parent?, #previous_sibling_node, #to_s
Constructor Details
#initialize(version = DEFAULT_VERSION, encoding = nil, standalone = nil) ⇒ XMLDecl
Returns a new instance of XMLDecl.
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File '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 else super() @version = version self.encoding = encoding @standalone = standalone end @version = DEFAULT_VERSION if @version.nil? end |
Instance Attribute Details
#standalone ⇒ Object Also known as: stand_alone?
Returns the value of attribute standalone.
17 18 19 |
# File 'lib/rexml/xmldecl.rb', line 17 def standalone @standalone end |
#version ⇒ Object
Returns the value of attribute version.
17 18 19 |
# File 'lib/rexml/xmldecl.rb', line 17 def version @version end |
#writeencoding ⇒ Object (readonly)
Returns the value of attribute writeencoding.
18 19 20 |
# File 'lib/rexml/xmldecl.rb', line 18 def writeencoding @writeencoding end |
#writethis ⇒ Object (readonly)
Returns the value of attribute writethis.
18 19 20 |
# File 'lib/rexml/xmldecl.rb', line 18 def writethis @writethis end |
Class Method Details
.default ⇒ Object
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
91 92 93 94 95 |
# File 'lib/rexml/xmldecl.rb', line 91 def XMLDecl.default rv = XMLDecl.new( "1.0" ) rv.nowrite rv end |
Instance Method Details
#==(other) ⇒ Object
55 56 57 58 59 60 |
# File 'lib/rexml/xmldecl.rb', line 55 def ==( other ) other.kind_of?(XMLDecl) and other.version == @version and other.encoding == self.encoding and other.standalone == @standalone end |
#dowrite ⇒ Object
101 102 103 |
# File 'lib/rexml/xmldecl.rb', line 101 def dowrite @writethis = true end |
#encoding=(enc) ⇒ Object
75 76 77 78 79 80 81 82 83 84 |
# File 'lib/rexml/xmldecl.rb', line 75 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 ⇒ Object
105 106 107 |
# File 'lib/rexml/xmldecl.rb', line 105 def inspect "#{START} ... #{STOP}" end |
#node_type ⇒ Object
68 69 70 |
# File 'lib/rexml/xmldecl.rb', line 68 def node_type :xmldecl end |
#nowrite ⇒ Object
97 98 99 |
# File 'lib/rexml/xmldecl.rb', line 97 def nowrite @writethis = false end |
#old_enc= ⇒ Object
73 |
# File 'lib/rexml/xmldecl.rb', line 73 alias :old_enc= :encoding= |
#write(writer, indent = -1,, transitive = false, ie_hack = false) ⇒ Object
- indent
-
Ignored. There must be no whitespace before an XML declaration
- transitive
-
Ignored
- ie_hack
-
Ignored
48 49 50 51 52 53 |
# File 'lib/rexml/xmldecl.rb', line 48 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 |
#xmldecl(version, encoding, standalone) ⇒ Object
62 63 64 65 66 |
# File 'lib/rexml/xmldecl.rb', line 62 def xmldecl version, encoding, standalone @version = version self.encoding = encoding @standalone = standalone end |