Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

(undefined method `+@' for []:Array)

I'm getting a very strange error message when I try to iterate through an array of objects. The error is

NoMethodError (undefined method `+@' for []:Array):

Here is the code of that loop.

#go through items and see if there are any corresponding offers 
    #All matches are stored in a hash
    items.each do |itemsi|
        bestoffer = -1
        matchescounter++ #matchescounter only get incredmented when all the offers have been taken care of
        offers.each do |offs|
        if itemsi.togive.to_str == offs.totake.to_str
            if offs.togive.to_int > bestoffer
                bestoffer = offs.togive.to_int
                matches[matchescounter].store(itemi, offer)         
            end#if
        end#if
        end#offers loop
    end#items loop

I don't have +@ anywhere in my code. Strange

like image 995
Pat R Avatar asked Mar 27 '26 02:03

Pat R


1 Answers

There is no ++ operator in Ruby.

And the error message is actually quite clear: it says that the method named '+@' does not exist for your instance of the Array type. '+@' is the actual name of the unary plus instance method, which is defined for the Numeric type, but not for Array.

like image 119
JRL Avatar answered Mar 28 '26 15:03

JRL



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!