class REXML::Comment - rexml: Ruby Standard Library Documentation

# class REXML::Comment

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

### Constants

START
STOP

### Attributes

string[RW]

The content text

to_s[RW]

The content text

### Public Class Methods

new( first, second = nil ) click to toggle source

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

Calls superclass method `REXML::Child::new`

    # File rexml-3.4.0/lib/rexml/comment.rb, line 24
    def initialize( first, second = nil )
      super(second)
      if first.kind_of? String
        @string = first
      elsif first.kind_of? Comment
        @string = first.string
      end
    end

### Public Instance Methods

<=>(other) click to toggle source

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

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

==( other ) click to toggle source

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

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

clone() click to toggle source

    # File rexml-3.4.0/lib/rexml/comment.rb, line 33
    def clone
      Comment.new self
    end

node_type() click to toggle source

    # File rexml-3.4.0/lib/rexml/comment.rb, line 75
    def node_type
      :comment
    end

write( output, indent=-1, transitive=false, ie_hack=false ) click to toggle source

## DEPRECATED¶ ↑

See `REXML::Formatters`

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

  Ignored by this class. The contents of comments are never modified.

ie_hack

  Needed for conformity to the child API, but not used by this class.

    # File rexml-3.4.0/lib/rexml/comment.rb, line 50
    def write( output, indent=-1, transitive=false, ie_hack=false )
      Kernel.warn("Comment.write is deprecated.  See REXML::Formatters", uplevel: 1)
      indent( output, indent )
      output << START
      output << @string
      output << STOP
    end