# REXML::XMLDecl (Class)

In: | rexml/xmldecl.rb
Parent: | Child

NEEDS DOCUMENTATION

## Methods

== clone default dowrite encoding= new node_type nowrite write xmldecl

## Constants

DEFAULT_VERSION | = | "1.0";
DEFAULT_ENCODING | = | "UTF-8";
DEFAULT_STANDALONE | = | "no";
START | = | '<\?xml';
STOP | = | '\?>';

## External Aliases

standalone -> stand_alone?
encoding= -> old_enc=

## Attributes

standalone | [RW] |
version | [RW] |
writeencoding | [R] |

## Included Modules

Encoding

## Public Class methods

new(version=DEFAULT_VERSION, encoding=nil, standalone=nil)

[Source]

    # File 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

default()

[Source]

    # File rexml/xmldecl.rb, line 83
        def XMLDecl.default
          rv = XMLDecl.new( "1.0" )
          rv.nowrite
          rv
        end

## Public Instance methods

clone()

[Source]

    # File rexml/xmldecl.rb, line 36
                    def clone
                            XMLDecl.new(self)
                    end

write(writer, indent=-1, transitive=false, ie_hack=false)

[Source]

    # File rexml/xmldecl.rb, line 40
                    def write writer, indent=-1, transitive=false, ie_hack=false
          return "" unless @writethis or writer.kind_of? Output
                            indent( writer, indent )
                            writer << START.sub(/\\/u, '')
          if writer.kind_of? Output
            writer << " #{content writer.encoding}"
          else
            writer << " #{content encoding}"
          end
                            writer << STOP.sub(/\\/u, '')
                    end

==( other )

[Source]

    # File rexml/xmldecl.rb, line 52
                    def ==( other )
                      other.kind_of?(XMLDecl) and
                      other.version == @version and
                      other.encoding == self.encoding and
                      other.standalone == @standalone
                    end

xmldecl(version, encoding, standalone)

[Source]

    # File rexml/xmldecl.rb, line 59
                    def xmldecl version, encoding, standalone
                            @version = version
                            self.encoding = encoding
                            @standalone = standalone
                    end

node_type()

[Source]

    # File rexml/xmldecl.rb, line 65
                    def node_type
                            :xmldecl
                    end

encoding=( enc )

[Source]

    # File rexml/xmldecl.rb, line 72
        def encoding=( enc )
          if enc.nil?
            self.old_enc = "UTF-8"
            @writeencoding = false
          else
            self.old_enc = enc
            @writeencoding = true
          end
          self.dowrite
        end

nowrite()

[Source]

    # File rexml/xmldecl.rb, line 89
        def nowrite
          @writethis = false
        end

dowrite()

[Source]

    # File rexml/xmldecl.rb, line 93
        def dowrite
          @writethis = true
        end

[Validate]