Add syntactic sugar for array '<<' method on my own method?

I want to write a method which takes its input and adds it to an array (in this case I am trying to abstract a session item as I think it looks prettier to use a helper method).

For example, native in ruby we have arr:

arr = []
arr << ‘item’

Is there a way I can write a method that uses the ‘<<’ syntactic sugar? Been poking around and don’t see clearly how to do this.

Just like you can write a method for assignment:

def assign_something=(value)

David Kahn wrote in post #977285:

I want to write a method which takes its input and adds it to an array
(in
this case I am trying to abstract a session item as I think it looks
prettier to use a helper method).

For example, native in ruby we have arr:

arr = []
arr << 'item'

Is there a way I can write a method that uses the '<<' syntactic sugar?
Been
poking around and don't see clearly how to do this.

def <<(other)
  # whatever
end

Best,

David Kahn wrote in post #977285:

I want to write a method which takes its input and adds it to an array

(in

this case I am trying to abstract a session item as I think it looks

prettier to use a helper method).

For example, native in ruby we have arr:

arr = []

arr << ‘item’

Is there a way I can write a method that uses the ‘<<’ syntactic sugar?

Been

poking around and don’t see clearly how to do this.

def <<(other)

whatever

end

I see, so it has to be within a class and not named… so if I am writing a helper method in app controller then this is weird, but now I see that I need to make a class for what I do, so thanks, my design has improved.

David Kahn wrote in post #977289:

>
> Is there a way I can write a method that uses the '<<' syntactic sugar?
> Been
> poking around and don't see clearly how to do this.

def <<(other)
# whatever
end

I see, so it has to be within a class

Module, actually. But this shouldn't surprise you: it's just a method
like any other.

and not named....

It is named. Its name is :<< .

so if I am
writing
a helper method in app controller then this is weird, but now I see that
I
need to make a class for what I do, so thanks, my design has improved.

Yeah. Don't put logic in your controllers. And remember that you can
reopen or mix into existing classes.

Best,