123456789_123456789_123456789_123456789_123456789_

Class: Capybara::Selector::CSS

Relationships & Source Files
Namespace Children
Classes:
Inherits: Object
Defined in: lib/capybara/selector/css.rb

Constant Summary

Class Method Summary

Class Method Details

.escape(str)

[ GitHub ]

  
# File 'lib/capybara/selector/css.rb', line 8

def self.escape(str)
  value = str.dup
  out = +''
  out << value.slice!(0...1) if value.match?(/^[-_]/)
  out << (value[0].match?(NMSTART) ? value.slice!(0...1) : escape_char(value.slice!(0...1)))
  out << value.gsub(/[^a-zA-Z0-9_-]/) { |char| escape_char char }
  out
end

.escape_char(char)

[ GitHub ]

  
# File 'lib/capybara/selector/css.rb', line 17

def self.escape_char(char)
  char.match?(%r{[ -/:-~]}) ? "\\#{char}" : format('\\%06<hex>x', hex: char.ord)
end

.split(css)

[ GitHub ]

  
# File 'lib/capybara/selector/css.rb', line 21

def self.split(css)
  Splitter.new.split(css)
end