While learning ruby, I want to study from the perspective of classes.

Exmaple:
Given: # Array, Index, Object
Operations: array[index]  = obj -> obj

Given: # Two Arrays
array & other_array    -> an_array
array + other_array    -> an_array
array - other_array    -> an_array
array <=> other_array  ->  -1, 0, +1
array == other_array   ->   bool

Given: # Array, Object
array.push(obj)         -> array
array << obj            -> array

etc..

So the idea is to know, what is possible with given objects of
different kind.

Is there any way to generate it?