module V8::Access::Invocation::Method

def methodcall(this, args)

def methodcall(this, args)
  context = V8::Context.current
  access = context.access
  if this.equal? self.receiver
    call *aritize(args)
  elsif this.class <= self.receiver.class
    access.methodcall(unbind, this, args)
  elsif this.equal? context.scope
    call *aritize(args)
  else
    fail TypeError, "cannot invoke #{self} on #{this}"
  end
end