public override Statistics GetStatistics() { var statistics = new Statistics(); V8SplitProxyNative.InvokeNoThrow(instance => instance.V8UnitTestSupport_GetStatistics(out statistics.IsolateCount, out statistics.ContextCount)); return(statistics); }
public void InvokeWithArrayBufferOrViewData(Action <IntPtr> action) { using (var actionScope = V8ProxyHelpers.CreateAddRefHostObjectScope(action)) { var pAction = actionScope.Value; V8SplitProxyNative.Invoke(instance => instance.V8Object_InvokeWithArrayBufferOrViewData(Handle, pAction)); } }
public void ReleaseEntity() { var tempHandle = handle; if (tempHandle != V8Entity.Handle.Empty) { V8SplitProxyNative.InvokeNoThrow(instance => instance.V8Entity_Release(tempHandle)); } }
public V8IsolateProxyImpl(string name, V8RuntimeConstraints constraints, V8RuntimeFlags flags, int debugPort) { holder = new V8EntityHolder("V8 runtime", () => V8SplitProxyNative.Invoke(instance => instance.V8Isolate_Create( name, constraints?.MaxNewSpaceSize ?? -1, constraints?.MaxOldSpaceSize ?? -1, flags.HasFlag(V8RuntimeFlags.EnableDebugging), flags.HasFlag(V8RuntimeFlags.EnableRemoteDebugging), flags.HasFlag(V8RuntimeFlags.EnableDynamicModuleImports), debugPort ))); }
public V8Context.Handle CreateContext(string name, V8ScriptEngineFlags flags, int debugPort) { return(V8SplitProxyNative.Invoke(instance => instance.V8Isolate_CreateContext( Handle, name, flags.HasFlag(V8ScriptEngineFlags.EnableDebugging), flags.HasFlag(V8ScriptEngineFlags.EnableRemoteDebugging), flags.HasFlag(V8ScriptEngineFlags.DisableGlobalMembers), flags.HasFlag(V8ScriptEngineFlags.EnableDateTimeConversion), flags.HasFlag(V8ScriptEngineFlags.EnableDynamicModuleImports), debugPort ))); }
public V8IsolateProxyImpl(string name, V8RuntimeConstraints constraints, V8RuntimeFlags flags, int debugPort) { holder = new V8EntityHolder("V8 runtime", () => V8SplitProxyNative.Invoke(instance => instance.V8Isolate_Create( name, constraints?.MaxNewSpaceSize ?? -1, constraints?.MaxOldSpaceSize ?? -1, constraints?.HeapExpansionMultiplier ?? 0, constraints?.MaxArrayBufferAllocation ?? ulong.MaxValue, flags.HasFlag(V8RuntimeFlags.EnableDebugging), flags.HasFlag(V8RuntimeFlags.EnableRemoteDebugging), flags.HasFlag(V8RuntimeFlags.EnableDynamicModuleImports), debugPort ))); }
public static void Destroy(ref V8EntityHolder holder) { var tempHandle = holder.handle; if (tempHandle != V8Entity.Handle.Empty) { V8SplitProxyNative.InvokeNoThrow(instance => instance.V8Entity_DestroyHandle(tempHandle)); } if (holder.registered) { V8Proxy.OnEntityHolderDestroyed(); } holder = new V8EntityHolder(holder.name); }
public V8ArrayBufferOrViewInfo GetArrayBufferOrViewInfo() { var kind = GetArrayBufferOrViewKind(); if (kind != V8ArrayBufferOrViewKind.None) { IV8Object arrayBuffer = null; ulong offset = 0; ulong size = 0; ulong length = 0; V8SplitProxyNative.Invoke(instance => instance.V8Object_GetArrayBufferOrViewInfo(Handle, out arrayBuffer, out offset, out size, out length)); return(new V8ArrayBufferOrViewInfo(kind, arrayBuffer, offset, size, length)); } return(null); }
public void SetProperty(int index, object value) { V8SplitProxyNative.Invoke(instance => instance.V8Object_SetIndexedProperty(Handle, index, value)); }
public override UIntPtr GetNativeDigest(string value) { return(V8SplitProxyNative.InvokeNoThrow(instance => instance.V8UnitTestSupport_GetTextDigest(value))); }
public void DisconnectClient() { V8SplitProxyNative.InvokeNoThrow(instance => instance.V8DebugCallback_DisconnectClient(Handle)); }
public object GetProperty(string name) { return(V8SplitProxyNative.Invoke(instance => instance.V8Object_GetNamedProperty(Handle, name))); }
public object InvokeMethod(string name, object[] args) { return(V8SplitProxyNative.Invoke(instance => instance.V8Object_InvokeMethod(Handle, name, args))); }
public object Invoke(bool asConstructor, object[] args) { return(V8SplitProxyNative.Invoke(instance => instance.V8Object_Invoke(Handle, asConstructor, args))); }
public void SendCommand(string command) { V8SplitProxyNative.InvokeNoThrow(instance => instance.V8DebugCallback_SendCommand(Handle, command)); }
private static void ScheduleHostException(Exception exception) { V8SplitProxyNative.InvokeNoThrow(instance => instance.HostException_Schedule(exception.GetBaseException().Message, ScriptEngine.Current?.MarshalToScript(exception))); }
public object GetProperty(int index) { return(V8SplitProxyNative.Invoke(instance => instance.V8Object_GetIndexedProperty(Handle, index))); }
public string[] GetPropertyNames() { return(V8SplitProxyNative.Invoke(instance => instance.V8Object_GetPropertyNames(Handle))); }
public bool DeleteProperty(string name) { return(V8SplitProxyNative.Invoke(instance => instance.V8Object_DeleteNamedProperty(Handle, name))); }
public void SetProperty(string name, object value) { V8SplitProxyNative.Invoke(instance => instance.V8Object_SetNamedProperty(Handle, name, value)); }
private static void ScheduleHostException(IntPtr pObject, Exception exception) { V8SplitProxyNative.InvokeNoThrow(instance => instance.HostException_Schedule(exception.GetBaseException().Message, V8ProxyHelpers.MarshalExceptionToScript(pObject, exception))); }
public bool DeleteProperty(int index) { return(V8SplitProxyNative.Invoke(instance => instance.V8Object_DeleteIndexedProperty(Handle, index))); }
public void Invoke() { V8SplitProxyNative.InvokeNoThrow(instance => instance.NativeCallback_Invoke(Handle)); }
public int[] GetPropertyIndices() { return(V8SplitProxyNative.Invoke(instance => instance.V8Object_GetPropertyIndices(Handle))); }