class Gammo::XPath::AST::NodeTest::Name
Attributes
local[R]
namespace[R]
Public Class Methods
new(local: nil, namespace: nil)
click to toggle source
# File lib/gammo/xpath/ast/node_test.rb, line 20 def initialize(local: nil, namespace: nil) @local = local @namespace = namespace end
Public Instance Methods
match?(node)
click to toggle source
# File lib/gammo/xpath/ast/node_test.rb, line 29 def match?(node) return false unless node return false if xml_namespace? return !namespace || namespace == node.namespace if local == ?* # TODO: investigate if node.instance_of?(Gammo::Attribute) # TODO: need to work node.key == local && node.namespace == namespace else if document = node.owner_document # TODO: ignoring ascii case return node.tag == local && (!namespace || node.namespace == namespace) if node.instance_of?(Gammo::Node::Element) return node.tag == local && node.namespace == namespace && namespace end node.tag == local && node.namespace == namespace end end
xml_namespace?()
click to toggle source
# File lib/gammo/xpath/ast/node_test.rb, line 25 def xml_namespace? namespace == 'http://www.w3.org/XML/1998/namespace' end