Nokogiri::CSS::Node

class Nokogiri::CSS::Node

Parent:
Object

Constants

ALLOW_COMBINATOR_ON_SELF

Attributes

type[RW]

Get the type of this node

value[RW]

Get the value of this node

Public Class Methods

new(type, value) Show source

Create a new Node with type and value

# File lib/nokogiri/css/node.rb, line 12
def initialize type, value
  @type = type
  @value = value
end

Public Instance Methods

accept(visitor) Show source

Accept visitor

# File lib/nokogiri/css/node.rb, line 18
def accept visitor
  visitor.send(:"visit_#{type.to_s.downcase}", self)
end
find_by_type(types) Show source

Find a node by type using types

# File lib/nokogiri/css/node.rb, line 30
def find_by_type types
  matches = []
  matches << self if to_type == types
  @value.each do |v|
    matches += v.find_by_type(types) if v.respond_to?(:find_by_type)
  end
  matches
end
to_a() Show source

Convert to array

# File lib/nokogiri/css/node.rb, line 47
def to_a
  [@type] + @value.map { |n| n.respond_to?(:to_a) ? n.to_a : [n] }
end
to_type() Show source

Convert #to_type

# File lib/nokogiri/css/node.rb, line 40
def to_type
  [@type] + @value.map { |n|
    n.to_type if n.respond_to?(:to_type)
  }.compact
end
to_xpath(prefix = '//', visitor = XPathVisitor.new) Show source

Convert this CSS node to xpath with prefix using visitor

# File lib/nokogiri/css/node.rb, line 24
def to_xpath prefix = '//', visitor = XPathVisitor.new
  prefix = '.' if ALLOW_COMBINATOR_ON_SELF.include?(type) && value.first.nil?
  prefix + visitor.accept(self)
end

© 2008–2016 Aaron Patterson, Mike Dalessio, Charles Nutter, Sergio Arbeo
Patrick Mahoney, Yoko Harada, Akinori Musha, John Shahid
Licensed under the MIT License.

在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号

意见反馈
返回顶部