PHP 8.2.31
Preview: xml.rb Size: 1.50 KB
/proc/thread-self/root/opt/alt/ruby25/lib64/ruby/2.5.0/rss/xml.rb

# frozen_string_literal: false
require "rss/utils"

module RSS
  module XML
    class Element
      include Enumerable

      attr_reader :name, :prefix, :uri, :attributes, :children
      def initialize(name, prefix=nil, uri=nil, attributes={}, children=[])
        @name = name
        @prefix = prefix
        @uri = uri
        @attributes = attributes
        if children.is_a?(String) or !children.respond_to?(:each)
          @children = [children]
        else
          @children = children
        end
      end

      def [](name)
        @attributes[name]
      end

      def []=(name, value)
        @attributes[name] = value
      end

      def <<(child)
        @children << child
      end

      def each(&block)
        @children.each(&block)
      end

      def ==(other)
        other.kind_of?(self.class) and
          @name == other.name and
          @uri == other.uri and
          @attributes == other.attributes and
          @children == other.children
      end

      def to_s
        rv = "<#{full_name}"
        attributes.each do |key, value|
          rv << " #{Utils.html_escape(key)}=\"#{Utils.html_escape(value)}\""
        end
        if children.empty?
          rv << "/>"
        else
          rv << ">"
          children.each do |child|
            rv << child.to_s
          end
          rv << "</#{full_name}>"
        end
        rv
      end

      def full_name
        if @prefix
          "#{@prefix}:#{@name}"
        else
          @name
        end
      end
    end
  end
end

Directory Contents

Dirs: 3 × Files: 22

Name Size Perms Modified Actions
content DIR
- drwxr-xr-x 2024-03-03 22:47:46
Edit Download
- drwxr-xr-x 2024-03-03 22:47:46
Edit Download
maker DIR
- drwxr-xr-x 2024-03-03 22:47:46
Edit Download
10.61 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
9.64 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
3.43 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
28.90 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
890 B lrw-r--r-- 2021-04-05 11:46:35
Edit Download
3.90 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
4.30 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
4.79 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
10.07 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
1.78 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
15.61 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
995 B lrw-r--r-- 2021-04-05 11:46:35
Edit Download
34.83 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
1.33 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
1.88 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
3.19 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
6.72 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
5.13 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
2.16 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
1.50 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
1.65 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download
2.13 KB lrw-r--r-- 2021-04-05 11:46:35
Edit Download

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