Class: REXML::Comment

Class | REXML::Comment
In: | rexml/comment.rb
Parent: | Child

Represents an XML comment; that is, text between <!— … —>

### Methods

<=> == clone new node_type write

### Included Modules

Comparable

### Constants

START | = | "<!--"
STOP | = | "-->"

### External Aliases

string | -> | to_s

### Attributes

string | [RW] |

### Public Class methods

new( first, second = nil )

Constructor. The first argument can be one of three types: @param first If String, the contents of this comment are set to the argument. If Comment, the argument is duplicated. If Source, the argument is scanned for a comment. @param second If the first argument is a Source, this argument should be nil, not supplied, or a Parent to be set as the parent of this object

[Source]

    # File rexml/comment.rb, line 21
                    def initialize( first, second = nil )
                            #puts "IN COMMENT CONSTRUCTOR; SECOND IS #{second.type}"
                            super(second)
                            if first.kind_of? String
                                    @string = first
                            elsif first.kind_of? Comment
                                    @string = first.string
                            end
                    end

### Public Instance methods

<=>(other)

Compares this Comment to another; the contents of the comment are used in the comparison.

[Source]

    # File rexml/comment.rb, line 69
                    def <=>(other)
                            other.to_s <=> @string
                    end

==( other )

Compares this Comment to another; the contents of the comment are used in the comparison.

[Source]

    # File rexml/comment.rb, line 76
                    def ==( other )
                            other.kind_of? Comment and
                            (other <=> self) == 0
                    end

clone()

[Source]

    # File rexml/comment.rb, line 31
                    def clone
                            Comment.new self
                    end

node_type()

[Source]

    # File rexml/comment.rb, line 81
        def node_type
          :comment
        end

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

output: | Where to write the string
indent: | An integer. If -1, no indenting will be used; otherwise, the indentation will be this number of spaces, and children will be indented an additional amount.
transitive: | If transitive is true and indent is >= 0, then the output will be pretty-printed in such a way that the added whitespace does not affect the absolute value of the document — that is, it leaves the value and number of Text nodes in the document unchanged.
ie_hack: | Internet Explorer is the worst piece of crap to have ever been written, with the possible exception of Windows itself. Since IE is unable to parse proper XML, we have to provide a hack to generate XML that IE’s limited abilities can handle. This hack inserts a space before the /> on empty tags.

[Source]

    # File rexml/comment.rb, line 53
                    def write( output, indent=-1, transitive=false, ie_hack=false )
                            indent( output, indent )
                            output << START
                            output << @string
          if indent>-1
            output << "\n"
            indent( output, indent )
          end
                            output << STOP
                    end

[Validate]