Class: REXML::DTD::EntityDecl (Ruby 2.3.4)

In Files

  • rexml/dtd/entitydecl.rb

Class/Module Index [+]

Quicksearch

REXML::DTD::EntityDecl

Public Class Methods

new(src)

<!ENTITY name SYSTEM “…”> <!ENTITY name “…”>

 
               # File rexml/dtd/entitydecl.rb, line 14
def initialize src
  super()
  md = nil
  if src.match( PUBLIC )
    md = src.match( PUBLIC, true )
    @middle = "PUBLIC"
    @content = "#{md[2]} #{md[4]}"
  elsif src.match( SYSTEM )
    md = src.match( SYSTEM, true )
    @middle = "SYSTEM"
    @content = md[2]
  elsif src.match( PLAIN )
    md = src.match( PLAIN, true )
    @middle = ""
    @content = md[2]
  elsif src.match( PERCENT )
    md = src.match( PERCENT, true )
    @middle = ""
    @content = md[2]
  end
  raise ParseException.new("failed Entity match", src) if md.nil?
  @name = md[1]
end
            
parse_source(source, listener)
 
               # File rexml/dtd/entitydecl.rb, line 50
def EntityDecl.parse_source source, listener
  md = source.match( PATTERN_RE, true )
  thing = md[0].squeeze(" \t\n\r")
  listener.send inspect.downcase, thing
end
            

Public Instance Methods

to_s()
 
               # File rexml/dtd/entitydecl.rb, line 38
def to_s
  rv = "<!ENTITY #@name "
  rv << "#@middle " if @middle.size > 0
  rv << @content
  rv
end
            
write( output, indent )
 
               # File rexml/dtd/entitydecl.rb, line 45
def write( output, indent )
  indent( output, indent )
  output << to_s
end