diff --git a/koala-wrapper/native/src/bridges.cc b/koala-wrapper/native/src/bridges.cc index 440bb5ba44bbf6a3650255987243ab0a6a630099..7a07b850da58b0159ad89754230b0f848289de70 100644 --- a/koala-wrapper/native/src/bridges.cc +++ b/koala-wrapper/native/src/bridges.cc @@ -220,6 +220,14 @@ KNativePointer impl_CreateContextFromString(KNativePointer configPtr, KStringPtr } KOALA_INTEROP_3(CreateContextFromString, KNativePointer, KNativePointer, KStringPtr, KStringPtr) +KNativePointer impl_CreateContextFromStringWithHistory(KNativePointer configPtr, KStringPtr& sourcePtr, + KStringPtr& filenamePtr, KBoolean isEnableHistory) +{ + auto config = reinterpret_cast(configPtr); + return GetImpl()->CreateContextFromStringWithHistory(config, sourcePtr.data(), filenamePtr.data(), isEnableHistory); +} +KOALA_INTEROP_4(CreateContextFromStringWithHistory, KNativePointer, KNativePointer, KStringPtr, KStringPtr, KBoolean) + KNativePointer impl_CreateContextFromFile(KNativePointer configPtr, KStringPtr& filenamePtr) { auto config = reinterpret_cast(configPtr); diff --git a/koala-wrapper/src/Es2pandaNativeModule.ts b/koala-wrapper/src/Es2pandaNativeModule.ts index 83a90fea2e5988d44f46bd413e381d7504e33271..fd3fa6c325fcc9896a4011e3631f259e8c985c28 100644 --- a/koala-wrapper/src/Es2pandaNativeModule.ts +++ b/koala-wrapper/src/Es2pandaNativeModule.ts @@ -105,6 +105,9 @@ export class Es2pandaNativeModule { _CreateContextFromString(config: KPtr, source: String, filename: String): KPtr { throw new Error('Not implemented'); } + _CreateContextFromStringWithHistory(config: KPtr, source: String, filename: String, isEnableHistory: KBoolean): KPtr { + throw new Error('Not implemented'); + } _CreateContextFromFile(config: KPtr, filename: String): KPtr { throw new Error('Not implemented'); } diff --git a/koala-wrapper/src/arkts-api/peers/Context.ts b/koala-wrapper/src/arkts-api/peers/Context.ts index b4bf7a203faa00c7eb776d1dfc428ff0d54a923d..95f300dd3abcdab0bf82ea832452ec5cdd3296c8 100644 --- a/koala-wrapper/src/arkts-api/peers/Context.ts +++ b/koala-wrapper/src/arkts-api/peers/Context.ts @@ -34,6 +34,15 @@ export class Context extends ArktsObject { ); } + static createFromStringWithHistory(source: string, isEnableHistory: KBoolean): Context { + if (!global.configIsInitialized()) { + throwError(`Config not initialized`); + } + return new Context( + global.es2panda._CreateContextFromStringWithHistory(global.config, passString(source), passString(global.filePath), isEnableHistory) + ); + } + static createCacheContextFromFile( configPtr: KNativePointer, fileName: string,