Method: XPath::Expression::Applied#to_xpath

Defined in:
lib/xpath/expression.rb

#to_xpath(predicate = nil) ⇒ Object



208
209
210
211
212
213
214
# File 'lib/xpath/expression.rb', line 208

def to_xpath(predicate=nil)
  @expression.to_xpath(predicate) % @variables
rescue ArgumentError # for ruby < 1.9 compat
  @expression.to_xpath(predicate).gsub(/%\{(\w+)\}/) do |_|
    @variables[$1.to_sym] or raise(ArgumentError, "expected variable #{$1} to be set")
  end
end