ruby-rdf / sparql-client

SPARQL client for Ruby.
http://rubygems.org/gems/sparql-client
The Unlicense
112 stars 58 forks source link

SPARQL::Client::Query#values raises NameError #96

Closed dsatoh closed 3 years ago

dsatoh commented 5 years ago

Example code

require 'sparql/client'
SPARQL::Client::Query
  .select
  .where(%i[s p o])
  .values(:s, RDF::URI('http://example.com/1'), RDF::URI('http://example.com/2'))

Result

$ bundle exec ruby /foo/bar/test.rb"
Traceback (most recent call last):
  6: from /foo/bar/test.rb:5:in `<main>'
  5: from /foo/bar/tmp/bundle/ruby/2.6.0/gems/sparql-client-3.0.1/lib/sparql/client/query.rb:598:in `values'
  4: from /foo/bar/tmp/bundle/ruby/2.6.0/gems/sparql-client-3.0.1/lib/sparql/client/query.rb:598:in `map'
  3: from /foo/bar/tmp/bundle/ruby/2.6.0/gems/sparql-client-3.0.1/lib/sparql/client/query.rb:599:in `block in values'
  2: from /foo/bar/tmp/bundle/ruby/2.6.0/gems/sparql-client-3.0.1/lib/sparql/client/query.rb:599:in `map'
  1: from /foo/bar/tmp/bundle/ruby/2.6.0/gems/sparql-client-3.0.1/lib/sparql/client/query.rb:603:in `block (2 levels) in values'
/foo/bar/tmp/bundle/ruby/2.6.0/gems/rdf-3.0.12/lib/rdf/mixin/enumerable.rb:761:in `method_missing': undefined local variable or method `graph_uri_or_var' for #<SPARQL::Client::Query:0x00007f95858a65c0> (NameError)

Process finished with exit code 1

The line raises exception is https://github.com/ruby-rdf/sparql-client/blob/8957d3a567f61212a199807571ee72e9083e1830/lib/sparql/client/query.rb#L603

I think the return might be local variable nil_literal_or_term instead of graph_uri_or_var.