opt
/
alt
/
ruby26
/
lib64
/
ruby
/
2.6.0
/
rexml
/
dtd
/
Go to Home Directory
+
Upload
Create File
root@0UT1S:~$
Execute
By Order of Mr.0UT1S
[DIR] ..
N/A
attlistdecl.rb
234 bytes
Rename
Delete
dtd.rb
1.21 KB
Rename
Delete
elementdecl.rb
456 bytes
Rename
Delete
entitydecl.rb
1.66 KB
Rename
Delete
notationdecl.rb
1.07 KB
Rename
Delete
# frozen_string_literal: false require_relative "elementdecl" require_relative "entitydecl" require_relative "../comment" require_relative "notationdecl" require_relative "attlistdecl" require_relative "../parent" module REXML module DTD class Parser def Parser.parse( input ) case input when String parse_helper input when File parse_helper input.read end end # Takes a String and parses it out def Parser.parse_helper( input ) contents = Parent.new while input.size > 0 case input when ElementDecl.PATTERN_RE match = $& contents << ElementDecl.new( match ) when AttlistDecl.PATTERN_RE matchdata = $~ contents << AttlistDecl.new( matchdata ) when EntityDecl.PATTERN_RE matchdata = $~ contents << EntityDecl.new( matchdata ) when Comment.PATTERN_RE matchdata = $~ contents << Comment.new( matchdata ) when NotationDecl.PATTERN_RE matchdata = $~ contents << NotationDecl.new( matchdata ) end end contents end end end end
Save