class Ldpath::FunctionSelector
Attributes
arguments[R]
fname[R]
Public Class Methods
new(fname, arguments = [])
click to toggle source
# File lib/ldpath/selectors.rb, line 53 def initialize(fname, arguments = []) @fname = fname @arguments = Array(arguments) end
Public Instance Methods
evaluate(program, uris, context) { |x| ... }
click to toggle source
# File lib/ldpath/selectors.rb, line 58 def evaluate(program, uris, context) return to_enum(:evaluate, program, uris, context) unless block_given? enum_wrap(uris).map do |uri| loading program, uri, context args = arguments.map do |i| case i when Selector i.evaluate(program, uri, context) else i end end enum_flatten_one(program.func_call(fname, uri, context, *args)).each do |x| yield x unless x.nil? end end end