Package com.whl.quickjs.wrapper
Class QuickJSContext
- java.lang.Object
-
- com.whl.quickjs.wrapper.QuickJSContext
-
public class QuickJSContext extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classQuickJSContext.BytecodeModuleLoaderstatic classQuickJSContext.DefaultModuleLoader
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description java.lang.ObjectcallFunctionBack(int callFunctionId, java.lang.Object... args)该方法只提供给 Native 层回调.byte[]compile(java.lang.String source)byte[]compile(java.lang.String source, java.lang.String fileName)byte[]compileModule(java.lang.String source)byte[]compileModule(java.lang.String source, java.lang.String fileName)static QuickJSContextcreate()JSArraycreateNewJSArray()JSObjectcreateNewJSObject()voiddestroy()voiddumpMemoryUsage()voiddumpMemoryUsage(java.io.File target)voiddumpObjects()voiddumpObjects(java.io.File target)java.lang.Objectevaluate(java.lang.String script)java.lang.Objectevaluate(java.lang.String script, java.lang.String fileName)java.lang.ObjectevaluateModule(java.lang.String script)java.lang.ObjectevaluateModule(java.lang.String script, java.lang.String moduleName)java.lang.Objectexecute(byte[] code)voidfreeValue(JSObject jsObj)java.lang.Objectget(JSArray jsArray, int index)longgetCurrentThreadId()JSObjectgetGlobalObject()ModuleLoadergetModuleLoader()java.lang.ObjectgetProperty(JSObject jsObj, java.lang.String name)voidhold(JSObject jsObj)Automatically manage the release of objects, the hold method is equivalent to call the dupValue and freeDupValue methods with NativeCleaner.booleanisLiveObject(JSObject jsObj)intlength(JSArray jsArray)java.lang.Objectparse(java.lang.String json)JSObjectparseJSON(java.lang.String json)Deprecated.voidremoveCallFunction(int callFunctionId)该方法只提供给 Native 层回调.voidrunGC()voidset(JSArray jsArray, java.lang.Object value, int index)voidsetMaxStackSize(int maxStackSize)voidsetMemoryLimit(int memoryLimitSize)voidsetModuleLoader(ModuleLoader moduleLoader)voidsetProperty(JSObject jsObj, java.lang.String name, java.lang.Object value)java.lang.Stringstringify(JSObject jsObj)voidthrowJSException(java.lang.String error)
-
-
-
Method Detail
-
create
public static QuickJSContext create()
-
isLiveObject
public boolean isLiveObject(JSObject jsObj)
-
setMaxStackSize
public void setMaxStackSize(int maxStackSize)
-
runGC
public void runGC()
-
setMemoryLimit
public void setMemoryLimit(int memoryLimitSize)
-
dumpMemoryUsage
public void dumpMemoryUsage(java.io.File target)
-
dumpMemoryUsage
public void dumpMemoryUsage()
-
dumpObjects
public void dumpObjects(java.io.File target)
-
dumpObjects
public void dumpObjects()
-
getCurrentThreadId
public long getCurrentThreadId()
-
setModuleLoader
public void setModuleLoader(ModuleLoader moduleLoader)
-
getModuleLoader
public ModuleLoader getModuleLoader()
-
evaluate
public java.lang.Object evaluate(java.lang.String script)
-
evaluate
public java.lang.Object evaluate(java.lang.String script, java.lang.String fileName)
-
getGlobalObject
public JSObject getGlobalObject()
-
destroy
public void destroy()
-
stringify
public java.lang.String stringify(JSObject jsObj)
-
getProperty
public java.lang.Object getProperty(JSObject jsObj, java.lang.String name)
-
setProperty
public void setProperty(JSObject jsObj, java.lang.String name, java.lang.Object value)
-
removeCallFunction
public void removeCallFunction(int callFunctionId)
该方法只提供给 Native 层回调.- Parameters:
callFunctionId- JSCallFunction 对象标识
-
callFunctionBack
public java.lang.Object callFunctionBack(int callFunctionId, java.lang.Object... args)该方法只提供给 Native 层回调.- Parameters:
callFunctionId- JSCallFunction 对象标识args- JS 到 Java 的参数映射
-
freeValue
public void freeValue(JSObject jsObj)
-
length
public int length(JSArray jsArray)
-
get
public java.lang.Object get(JSArray jsArray, int index)
-
set
public void set(JSArray jsArray, java.lang.Object value, int index)
-
hold
public void hold(JSObject jsObj)
Automatically manage the release of objects, the hold method is equivalent to call the dupValue and freeDupValue methods with NativeCleaner.
-
createNewJSObject
public JSObject createNewJSObject()
-
createNewJSArray
public JSArray createNewJSArray()
-
parseJSON
@Deprecated public JSObject parseJSON(java.lang.String json)
Deprecated.Useparse(String)replace.
-
parse
public java.lang.Object parse(java.lang.String json)
-
compile
public byte[] compile(java.lang.String source)
-
compile
public byte[] compile(java.lang.String source, java.lang.String fileName)
-
compileModule
public byte[] compileModule(java.lang.String source)
-
compileModule
public byte[] compileModule(java.lang.String source, java.lang.String fileName)
-
execute
public java.lang.Object execute(byte[] code)
-
evaluateModule
public java.lang.Object evaluateModule(java.lang.String script, java.lang.String moduleName)
-
evaluateModule
public java.lang.Object evaluateModule(java.lang.String script)
-
throwJSException
public void throwJSException(java.lang.String error)
-
-