public unsafe Rooted <Value> InvokeFunction( JSContextPtr context, JSHandleObject thisReference, params Value[] arguments ) { fixed(Value *pThis = &this) fixed(Value * pArgs = arguments) { var argsPtr = new ValueArrayPtr((uint)arguments.Length, (IntPtr)pArgs); var resultRoot = new Rooted <Value>(context, Undefined); if (JSAPI.CallFunctionValue( context, thisReference, pThis, ref argsPtr, resultRoot )) { return(resultRoot); } resultRoot.Dispose(); return(null); } }