How to call a class from another file

Hi everyone, I had this little problem and having no luck so far. I have
external file called

require 'query-eval' # here the name of the file required query-eval.rb

then there is this class in query-eval.rb that I want to call from my
program that is saved as a different file and IS in the same directory.
Following the instruction in file I had following three line code that
gives error. I think it is because QueryEval is a class not a method. is
there a way to call class without hassle? thank you

filename='rlv-ass' # another external file
qe = QueryEval(filename)
qe.process_query_results(sorteddocs,1)

ERROR :
project4.rb:243: undefined method `QueryEval' for #<Object:0xb7f4c970>
(NoMethodError)

···

--
Posted via http://www.ruby-forum.com/.

You're problem is almost certainly connected to the fact that there's
no "new" in your code. You probably meant

qe = QueryEval.new filename

Kind regards

robert

···

2006/5/8, huseyin polat <huseyinpolat@gmail.com>:

Hi everyone, I had this little problem and having no luck so far. I have
external file called

require 'query-eval' # here the name of the file required query-eval.rb

then there is this class in query-eval.rb that I want to call from my
program that is saved as a different file and IS in the same directory.
Following the instruction in file I had following three line code that
gives error. I think it is because QueryEval is a class not a method. is
there a way to call class without hassle? thank you

filename='rlv-ass' # another external file
qe = QueryEval(filename)
qe.process_query_results(sorteddocs,1)

ERROR :
project4.rb:243: undefined method `QueryEval' for #<Object:0xb7f4c970>
(NoMethodError)

--
Have a look: Robert K. | Flickr

This has nothing to do with external files.
You don't call classes - you call methods.

That method could be a constructor if (as it looks above) you want a
QueryEval object to work with i.e.

class QueryEval
  def initialize(filename)
    # make a new object....
  end

  def process_query_results name, number
    # do whatever
  end

end

and then later you could call that as

  qe = QueryEval.new(filename)
  qe.process_query_results(sorteddocs,1)

Does that help at all?

···

On 08/05/06, huseyin polat <huseyinpolat@gmail.com> wrote:

filename='rlv-ass' # another external file
qe = QueryEval(filename)
qe.process_query_results(sorteddocs,1)

ERROR :
project4.rb:243: undefined method `QueryEval' for #<Object:0xb7f4c970>
(NoMethodError)

--
Rasputin :: Jack of All Trades - Master of Nuns
http://number9.hellooperator.net/

Robert Klemme wrote:

···

2006/5/8, huseyin polat <huseyinpolat@gmail.com>:

filename='rlv-ass' # another external file
qe = QueryEval(filename)
qe.process_query_results(sorteddocs,1)

ERROR :
project4.rb:243: undefined method `QueryEval' for #<Object:0xb7f4c970>
(NoMethodError)

You're problem is almost certainly connected to the fact that there's
no "new" in your code. You probably meant

qe = QueryEval.new filename

Kind regards

robert

Robert, that was it, I have forgotten the "new" as you have said.. thank
you so much.. thank you///

--
Posted via http://www.ruby-forum.com/\.