GRAYBYTE WORDPRESS FILE MANAGER2537

Server IP : 198.54.121.189 / Your IP : 216.73.216.224
System : Linux premium69.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
PHP Version : 7.4.33
Disable Function : NONE
cURL : ON | WGET : ON | Sudo : OFF | Pkexec : OFF
Directory : /opt/alt/ruby20/lib64/ruby/2.0.0/rexml/
Upload Files :
Current_dir [ Not Writeable ] Document_root [ Writeable ]

Command :


Current File : /opt/alt/ruby20/lib64/ruby/2.0.0/rexml//xpath.rb
require 'rexml/functions'
require 'rexml/xpath_parser'

module REXML
  # Wrapper class.  Use this class to access the XPath functions.
  class XPath
    include Functions
    # A base Hash object, supposing to be used when initializing a
    # default empty namespaces set, but is currently unused.
    # TODO: either set the namespaces=EMPTY_HASH, or deprecate this.
    EMPTY_HASH = {}

    # Finds and returns the first node that matches the supplied xpath.
    # element::
    #   The context element
    # path::
    #   The xpath to search for.  If not supplied or nil, returns the first
    #   node matching '*'.
    # namespaces::
    #   If supplied, a Hash which defines a namespace mapping.
    # variables::
    #   If supplied, a Hash which maps $variables in the query
    #   to values. This can be used to avoid XPath injection attacks
    #   or to automatically handle escaping string values.
    #
    #  XPath.first( node )
    #  XPath.first( doc, "//b"} )
    #  XPath.first( node, "a/x:b", { "x"=>"http://doofus" } )
    #  XPath.first( node, '/book/publisher/text()=$publisher', {}, {"publisher"=>"O'Reilly"})
    def XPath::first element, path=nil, namespaces=nil, variables={}
      raise "The namespaces argument, if supplied, must be a hash object." unless namespaces.nil? or namespaces.kind_of?(Hash)
      raise "The variables argument, if supplied, must be a hash object." unless variables.kind_of?(Hash)
      parser = XPathParser.new
      parser.namespaces = namespaces
      parser.variables = variables
      path = "*" unless path
      element = [element] unless element.kind_of? Array
      parser.parse(path, element).flatten[0]
    end

    # Iterates over nodes that match the given path, calling the supplied
    # block with the match.
    # element::
    #   The context element
    # path::
    #   The xpath to search for.  If not supplied or nil, defaults to '*'
    # namespaces::
    #   If supplied, a Hash which defines a namespace mapping
    # variables::
    #   If supplied, a Hash which maps $variables in the query
    #   to values. This can be used to avoid XPath injection attacks
    #   or to automatically handle escaping string values.
    #
    #  XPath.each( node ) { |el| ... }
    #  XPath.each( node, '/*[@attr='v']' ) { |el| ... }
    #  XPath.each( node, 'ancestor::x' ) { |el| ... }
    #  XPath.each( node, '/book/publisher/text()=$publisher', {}, {"publisher"=>"O'Reilly"}) \
    #    {|el| ... }
    def XPath::each element, path=nil, namespaces=nil, variables={}, &block
      raise "The namespaces argument, if supplied, must be a hash object." unless namespaces.nil? or namespaces.kind_of?(Hash)
      raise "The variables argument, if supplied, must be a hash object." unless variables.kind_of?(Hash)
      parser = XPathParser.new
      parser.namespaces = namespaces
      parser.variables = variables
      path = "*" unless path
      element = [element] unless element.kind_of? Array
      parser.parse(path, element).each( &block )
    end

    # Returns an array of nodes matching a given XPath.
    def XPath::match element, path=nil, namespaces=nil, variables={}
      parser = XPathParser.new
      parser.namespaces = namespaces
      parser.variables = variables
      path = "*" unless path
      element = [element] unless element.kind_of? Array
      parser.parse(path,element)
    end
  end
end

[ Back ]
Name
Size
Last Modified
Owner / Group
Permissions
Options
..
--
March 03 2024 22:53:08
root / root
0755
dtd
--
March 03 2024 22:43:33
root / linksafe
0755
formatters
--
March 03 2024 22:43:33
root / linksafe
0755
light
--
March 03 2024 22:43:33
root / linksafe
0755
parsers
--
March 03 2024 22:43:33
root / linksafe
0755
validation
--
March 03 2024 22:43:33
root / linksafe
0755
attlistdecl.rb
1.887 KB
October 02 2009 10:45:39
root / linksafe
0644
attribute.rb
5.395 KB
November 08 2010 20:59:01
root / linksafe
0644
cdata.rb
1.542 KB
May 19 2011 00:07:25
root / linksafe
0644
child.rb
2.628 KB
May 19 2011 00:07:25
root / linksafe
0644
comment.rb
2.136 KB
May 19 2011 00:07:25
root / linksafe
0644
doctype.rb
6.582 KB
December 07 2010 12:10:23
root / linksafe
0644
document.rb
9.518 KB
November 13 2014 13:35:51
root / linksafe
0644
element.rb
43.854 KB
January 03 2013 08:48:22
root / linksafe
0644
encoding.rb
1.125 KB
November 06 2012 00:49:57
root / linksafe
0644
entity.rb
5.531 KB
November 13 2014 13:35:51
root / linksafe
0644
functions.rb
11.266 KB
May 13 2011 17:54:22
root / linksafe
0644
instruction.rb
2.009 KB
October 02 2009 10:45:39
root / linksafe
0644
namespace.rb
1.091 KB
October 02 2009 10:45:39
root / linksafe
0644
node.rb
2.134 KB
May 19 2011 00:07:25
root / linksafe
0644
output.rb
0.507 KB
November 03 2012 05:43:28
root / linksafe
0644
parent.rb
4.327 KB
January 31 2010 06:55:06
root / linksafe
0644
parseexception.rb
1.223 KB
October 30 2010 12:10:56
root / linksafe
0644
quickpath.rb
9.084 KB
May 19 2011 00:07:25
root / linksafe
0644
rexml.rb
1.648 KB
March 26 2013 17:54:43
root / linksafe
0644
sax2listener.rb
3.6 KB
October 02 2009 10:45:39
root / linksafe
0644
source.rb
7.597 KB
November 06 2012 00:49:57
root / linksafe
0644
streamlistener.rb
3.878 KB
October 02 2009 10:45:39
root / linksafe
0644
syncenumerator.rb
0.669 KB
October 02 2009 10:45:39
root / linksafe
0644
text.rb
13.569 KB
March 26 2013 17:54:43
root / linksafe
0644
undefinednamespaceexception.rb
0.205 KB
November 16 2007 01:30:29
root / linksafe
0644
xmldecl.rb
2.683 KB
November 03 2012 05:44:31
root / linksafe
0644
xmltokens.rb
0.514 KB
April 05 2010 21:08:12
root / linksafe
0644
xpath.rb
3.313 KB
May 18 2011 21:19:18
root / linksafe
0644
xpath_parser.rb
25.698 KB
May 11 2011 22:56:13
root / linksafe
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025
CONTACT ME
Static GIF