when i run this.iterator() which calls invoke(Int)...
# stdlib
j
when i run this.iterator() which calls invoke(Int) should i assume origin is the vtable for IDataframe::invoke(Int) ? do i need to manually delegate each method i wish to expose if I iwsh to use specialized methods I write in the delegator ?
Copy code
class FrameGrouper(
    private val origin: IDataFrame,
    vararg val gby: Int
) :  IDataFrame  by origin  {
    override fun invoke(row: Int) =...}
k
Can you show some more complete code? Why would
this.iterator()
call
invoke
? And where do vtables come it?
j
i am debugging it now. "by origin" is a total headache.
Untitled
k
That's a lot of code...
j
yeah the delegation is really causing me to backtrack every method in the origin class and make a delegator method even if its the same code
it's better if i make the delegation manual here since they are doing different things under the hood
h
@jimn btw format code by wrapping with ` or ```