PHP 8.2.31
Preview: attlistdecl.rb Size: 1.89 KB
//proc/thread-self/root/opt/alt/ruby20/lib64/ruby/2.0.0/rexml/attlistdecl.rb

#vim:ts=2 sw=2 noexpandtab:
require 'rexml/child'
require 'rexml/source'

module REXML
  # This class needs:
  # * Documentation
  # * Work!  Not all types of attlists are intelligently parsed, so we just
  # spew back out what we get in.  This works, but it would be better if
  # we formatted the output ourselves.
  #
  # AttlistDecls provide *just* enough support to allow namespace
  # declarations.  If you need some sort of generalized support, or have an
  # interesting idea about how to map the hideous, terrible design of DTD
  # AttlistDecls onto an intuitive Ruby interface, let me know.  I'm desperate
  # for anything to make DTDs more palateable.
  class AttlistDecl < Child
    include Enumerable

    # What is this?  Got me.
    attr_reader :element_name

    # Create an AttlistDecl, pulling the information from a Source.  Notice
    # that this isn't very convenient; to create an AttlistDecl, you basically
    # have to format it yourself, and then have the initializer parse it.
    # Sorry, but for the forseeable future, DTD support in REXML is pretty
    # weak on convenience.  Have I mentioned how much I hate DTDs?
    def initialize(source)
      super()
      if (source.kind_of? Array)
        @element_name, @pairs, @contents = *source
      end
    end

    # Access the attlist attribute/value pairs.
    #  value = attlist_decl[ attribute_name ]
    def [](key)
      @pairs[key]
    end

    # Whether an attlist declaration includes the given attribute definition
    #  if attlist_decl.include? "xmlns:foobar"
    def include?(key)
      @pairs.keys.include? key
    end

    # Iterate over the key/value pairs:
    #  attlist_decl.each { |attribute_name, attribute_value| ... }
    def each(&block)
      @pairs.each(&block)
    end

    # Write out exactly what we got in.
    def write out, indent=-1
      out << @contents
    end

    def node_type
      :attlistdecl
    end
  end
end

Directory Contents

Dirs: 5 × Files: 29

Name Size Perms Modified Actions
dtd DIR
- drwxr-xr-x 2024-03-03 22:43:33
Edit Download
- drwxr-xr-x 2024-03-03 22:43:33
Edit Download
light DIR
- drwxr-xr-x 2024-03-03 22:43:33
Edit Download
parsers DIR
- drwxr-xr-x 2024-03-03 22:43:33
Edit Download
- drwxr-xr-x 2024-03-03 22:43:33
Edit Download
1.89 KB lrw-r--r-- 2009-10-02 10:45:39
Edit Download
5.39 KB lrw-r--r-- 2010-11-08 20:59:01
Edit Download
1.54 KB lrw-r--r-- 2011-05-19 00:07:25
Edit Download
2.63 KB lrw-r--r-- 2011-05-19 00:07:25
Edit Download
2.14 KB lrw-r--r-- 2011-05-19 00:07:25
Edit Download
6.58 KB lrw-r--r-- 2010-12-07 12:10:23
Edit Download
9.52 KB lrw-r--r-- 2014-11-13 13:35:51
Edit Download
43.85 KB lrw-r--r-- 2013-01-03 08:48:22
Edit Download
1.13 KB lrw-r--r-- 2012-11-06 00:49:57
Edit Download
5.53 KB lrw-r--r-- 2014-11-13 13:35:51
Edit Download
11.27 KB lrw-r--r-- 2011-05-13 17:54:22
Edit Download
2.01 KB lrw-r--r-- 2009-10-02 10:45:39
Edit Download
1.09 KB lrw-r--r-- 2009-10-02 10:45:39
Edit Download
2.13 KB lrw-r--r-- 2011-05-19 00:07:25
Edit Download
519 B lrw-r--r-- 2012-11-03 05:43:28
Edit Download
4.33 KB lrw-r--r-- 2010-01-31 06:55:06
Edit Download
1.22 KB lrw-r--r-- 2010-10-30 12:10:56
Edit Download
9.08 KB lrw-r--r-- 2011-05-19 00:07:25
Edit Download
1.65 KB lrw-r--r-- 2013-03-26 17:54:43
Edit Download
3.60 KB lrw-r--r-- 2009-10-02 10:45:39
Edit Download
7.60 KB lrw-r--r-- 2012-11-06 00:49:57
Edit Download
3.88 KB lrw-r--r-- 2009-10-02 10:45:39
Edit Download
685 B lrw-r--r-- 2009-10-02 10:45:39
Edit Download
13.57 KB lrw-r--r-- 2013-03-26 17:54:43
Edit Download
210 B lrw-r--r-- 2007-11-16 01:30:29
Edit Download
2.68 KB lrw-r--r-- 2012-11-03 05:44:31
Edit Download
526 B lrw-r--r-- 2010-04-05 21:08:12
Edit Download
3.31 KB lrw-r--r-- 2011-05-18 21:19:18
Edit Download
25.70 KB lrw-r--r-- 2011-05-11 22:56:13
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).