OXIESEC PANEL
- Current Dir:
/
/
usr
/
lib
/
ruby
/
2.5.0
/
rexml
/
dtd
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
05/09/2024 07:14:11 AM
rwxr-xr-x
📄
attlistdecl.rb
228 bytes
12/16/2015 05:07:31 AM
rw-r--r--
📄
dtd.rb
1.2 KB
07/14/2016 03:35:38 PM
rw-r--r--
📄
elementdecl.rb
450 bytes
12/16/2015 05:07:31 AM
rw-r--r--
📄
entitydecl.rb
1.66 KB
12/16/2015 05:07:31 AM
rw-r--r--
📄
notationdecl.rb
1.06 KB
12/16/2015 05:07:31 AM
rw-r--r--
Editing: notationdecl.rb
Close
# frozen_string_literal: false require "rexml/child" module REXML module DTD class NotationDecl < Child START = "<!NOTATION" START_RE = /^\s*#{START}/um PUBLIC = /^\s*#{START}\s+(\w[\w-]*)\s+(PUBLIC)\s+((["']).*?\4)\s*>/um SYSTEM = /^\s*#{START}\s+(\w[\w-]*)\s+(SYSTEM)\s+((["']).*?\4)\s*>/um def initialize src super() if src.match( PUBLIC ) md = src.match( PUBLIC, true ) elsif src.match( SYSTEM ) md = src.match( SYSTEM, true ) else raise ParseException.new( "error parsing notation: no matching pattern", src ) end @name = md[1] @middle = md[2] @rest = md[3] end def to_s "<!NOTATION #@name #@middle #@rest>" end def write( output, indent ) indent( output, indent ) output << to_s end def NotationDecl.parse_source source, listener md = source.match( PATTERN_RE, true ) thing = md[0].squeeze(" \t\n\r") listener.send inspect.downcase, thing end end end end