class REXML::DTD::Parser

Public Class Methods

parse( input ) click to toggle source
# File lib/rexml/dtd/dtd.rb, line 11
def Parser.parse( input )
 case input
 when String
 parse_helper input
 when File
 parse_helper input.read
 end
end
parse_helper( input ) click to toggle source

Takes a String and parses it out

# File lib/rexml/dtd/dtd.rb, line 21
def Parser.parse_helper( input )
 contents = Parent.new
 while input.size > 0
 case input
 when ElementDecl.PATTERN_RE
 match = $&
 source = $'
 contents << ElementDecl.new( match )
 when AttlistDecl.PATTERN_RE
 matchdata = $~
 source = $'
 contents << AttlistDecl.new( matchdata )
 when EntityDecl.PATTERN_RE
 matchdata = $~
 source = $'
 contents << EntityDecl.new( matchdata )
 when Comment.PATTERN_RE
 matchdata = $~
 source = $'
 contents << Comment.new( matchdata )
 when NotationDecl.PATTERN_RE
 matchdata = $~
 source = $'
 contents << NotationDecl.new( matchdata )
 end
 end
 contents
end