code: protected function createProtectedCaller($instance)
      {
          $closure = function ($method, $args) {
              $callable = [$this, $method];
  
              return call_user_func_array($callable, $args);
          };
  
          return $closure->bindTo($instance, $instance);
      }
docs: Create closure to call inaccessible method.
  
  @param $instance
  @return \Closure