From 728c5a2c924d22992c351442c1e8ad0c66b186cb Mon Sep 17 00:00:00 2001 From: gou-jingjing Date: Mon, 14 Apr 2025 19:22:57 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E4=B8=8E=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B=E5=AF=B9=E5=BA=94?= =?UTF-8?q?=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: gou-jingjing --- src/vscode_plugin/docs/testcaseTypeMapping.md | 84 +++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 src/vscode_plugin/docs/testcaseTypeMapping.md diff --git a/src/vscode_plugin/docs/testcaseTypeMapping.md b/src/vscode_plugin/docs/testcaseTypeMapping.md new file mode 100644 index 00000000..9e238e55 --- /dev/null +++ b/src/vscode_plugin/docs/testcaseTypeMapping.md @@ -0,0 +1,84 @@ +# 类型与测试用例对应文档 + +## dts2cpp + +### 变量/返回值 +| 类型 | 状态 | 测试用例路径 | +| ------------------------------------------------------------ | ------------------ | ------------ | +| string, number, boolean, void, interface, type,class,Map, Map, Map ,Array\,Array\, Array\,number[],string[],boolean, Set\, Set\,Set\,tuple:如[number,string,boolean], union:如string \| number, enum, any | 已支持,待补充用例 | - | + +### 函数类型 +| 类型 | 状态 | 测试用例路径 | +| --------------- | ------------------ | ------------ | +| static | 已支持,待补充用例 | - | +| $ | 已支持,待补充用例 | - | +| on/off | 已支持,待补充用例 | - | +| callback | 暂不支持 | - | +| promise | 暂不支持 | - | +| arrow func | 暂不支持 | - | +| threadsafe_func | 暂不支持 | - | + +### namespace转换 +| 类型 | 状态 | 测试用例路径 | +| --------- | ---------------------- | ------------------------------------------------------------ | +| class | 已支持 | parse: `src/test/suite/parse/parsetsclass.test.ts`
gen: 待补充用例 | +| function | 已支持 | parse: `src/test/suite/parse/parsetsfunc.test.ts`
gen: 待补充用例 | +| interface | 已支持 | parse: `src/test/suite/parse/parsetsstruct.test.ts`
gen: 待补充用例 | +| enum | 已支持 | parse: `src/test/suite/parse/parsetsenum.test.ts`
gen: 待补充用例 | +| union | 已支持 | parse: `src/test/suite/parse/parsetsunion.test.ts`
gen: 待补充用例 | +| type | parse支持,gen暂不支持 | - | + +### 其他 +| 功能 | 状态 | 测试用例路径 | +| ---------------- | -------- | ------------ | +| import自定义文件 | 暂不支持 | - | + +--- + +## h2dts + +### 变量/返回值 +| 类型 | 状态 | 测试用例路径 | +| ------------------------------------------------------------ | ------ | ------------------------------------------- | +| 基本类型/STL容器/迭代器/map系列/set系列/tuple/pair/智能指针等:
基本类型:int、size_t、double、float、short、long、uint8_t、uint16_t、uint32_t、uint64_t、int8_t、int16_t、int32_t、int64_t、bool、char、wchar_t、char8_t、char16_t、char32_t;
std::string::iterator;
std::vector:std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\;
std::vector\::iterator:std::vector\::iterator、...、std::vector\::iterator、std::vector\::iterator、...
std::array: std::array\、...、std::array\、std::array\、...
std::array\::iterator:std::array\::iterator、...、std::array\::iterator、std::array\::iterator、...
std::deque: std::deque\、...、std::deque\、std::deque\、...
std::deque\::iterator: std::deque\::iterator、...、std::deque\::iterator、std::deque\::iterator、...
std::list: std::list\、...、std::list\、std::list\、...
std::list\::iterator: std::list\::iterator、...、std::list\::iterator、std::list\::iterator、...
std::forward_list: std::forward_list\、...、std::forward_list\、std::forward_list\、...
std::forward_list\::iterator: std::forward_list\::iterator、...、std::forward_list\::iterator、std::forward_list\::iterator、...
std::stack: std::stack\、...、std::stack\、std::stack\、...
std::stack\::iterator: std::stack\::iterator、...、std::stack\::iterator、std::stack\::iterator、...
std::queue: std::queue\、...、std::queue\、std::queue\、...
std::queue\::iterator: std::queue\::iterator、...、std::queue\::iterator、std::queue\::iterator、...
std::valarray: std::valarray\、...、std::valarray\、std::valarray\、...
std::valarray\::iterator: std::valarray\::iterator、...、std::valarray\::iterator、std::valarray\::iterator、...
std::priority_queue: std::priority_queue\、...、std::priority_queue\、std::priority_queue\、...
std::priority_queue\::iterator: std::priority_queue\::iterator、...、std::priority_queue\::iterator、std::priority_queue\::iterator、...
std::map: std::map\、std::map\、...
std::map\::itrator:std::map\::iterator、...
std::unordered_map: std::unordered_map\、...
std::unordered_map\::itrator: std::unordered_map\::iterator、...
std::multimap: std::multimap\、...
std::multimap\::itrator: std::multimap\::iterator、...
std::unordered_multimap: std::unordered_multimap\、...
std::unordered_multimap\::itrator: std::unordered_multimap\::iterator
std::set: std::set\、...
std::set\::iterator: std::set\::iterator、...
std::unordered_set: std::unordered_set\、...
std::unordered_set\::iterator: std::unordered_set\::iterator、...
std::multiset: std::multiset\、...
std::multiset\::iterator: std::multiset\::iterator、...
std::unordered_multiset: std::unordered_multiset\、...
std::unordered_multiset\::iterator: std::unordered_multiset\::iterator、...
std::tuple: std::tuple\、...
std::pair: std::pair\、...
std::complex: std::complex\、...
Date: std::time_t、std::clock_t、...
std::function: std::function\、...
智能指针:std::unique_ptr\、std::shared_ptr\、std::weak_ptr\、... | 已支持 | `src/test/suite/gen/gendtstranskey.test.ts` | + +### 函数类型 +| 类型 | 状态 | 测试用例路径 | +| ---------- | ------------------ | ------------------------------------------- | +| 同步函数 | 已支持 | `src/test/suite/gen/gendtsfunction.test.ts` | +| static函数 | 已支持,待补充用例 | - | +| callback | 暂不支持 | - | +| promise | 暂不支持 | - | + +### namespace转换 +| 类型 | 状态 | 测试用例路径 | +| -------- | ------ | ------------------------------------------- | +| class | 已支持 | `src/test/suite/gen/gendtsclasses.test.ts` | +| struct | 已支持 | `src/test/suite/gen/gendtsstructs.test.ts` | +| union | 已支持 | `src/test/suite/gen/gendtsunion.test.ts` | +| enum | 已支持 | `src/test/suite/gen/gendtsenum.test.ts` | +| function | 已支持 | `src/test/suite/gen/gendtsfunction.test.ts` | + +--- + +## h2dtscpp + +### 变量/返回值 +| 类型 | 状态 | 测试用例路径 | +| ------------------------------------------------------------ | ------------------ | ------------ | +| 基本类型/STL容器/迭代器/map系列/set系列/tuple/pair/智能指针等:
基本类型:int、size_t、double、float、short、long、uint8_t、uint16_t、uint32_t、uint64_t、int8_t、int16_t、int32_t、int64_t、bool、char、wchar_t、char8_t、char16_t、char32_t;
std::string::iterator;
std::vector:std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\、std::vector\;
std::vector\::iterator:std::vector\::iterator、...、std::vector\::iterator、std::vector\::iterator、...
std::array: std::array\、...、std::array\、std::array\、...
std::array\::iterator:std::array\::iterator、...、std::array\::iterator、std::array\::iterator、...
std::deque: std::deque\、...、std::deque\、std::deque\、...
std::deque\::iterator: std::deque\::iterator、...、std::deque\::iterator、std::deque\::iterator、...
std::list: std::list\、...、std::list\、std::list\、...
std::list\::iterator: std::list\::iterator、...、std::list\::iterator、std::list\::iterator、...
std::forward_list: std::forward_list\、...、std::forward_list\、std::forward_list\、...
std::forward_list\::iterator: std::forward_list\::iterator、...、std::forward_list\::iterator、std::forward_list\::iterator、...
std::stack: std::stack\、...、std::stack\、std::stack\、...
std::stack\::iterator: std::stack\::iterator、...、std::stack\::iterator、std::stack\::iterator、...
std::queue: std::queue\、...、std::queue\、std::queue\、...
std::queue\::iterator: std::queue\::iterator、...、std::queue\::iterator、std::queue\::iterator、...
std::valarray: std::valarray\、...、std::valarray\、std::valarray\、...
std::valarray\::iterator: std::valarray\::iterator、...、std::valarray\::iterator、std::valarray\::iterator、...
std::priority_queue: std::priority_queue\、...、std::priority_queue\、std::priority_queue\、...
std::priority_queue\::iterator: std::priority_queue\::iterator、...、std::priority_queue\::iterator、std::priority_queue\::iterator、...
std::map: std::map\、std::map\、...
std::map\::itrator:std::map\::iterator、...
std::unordered_map: std::unordered_map\、...
std::unordered_map\::itrator: std::unordered_map\::iterator、...
std::multimap: std::multimap\、...
std::multimap\::itrator: std::multimap\::iterator、...
std::unordered_multimap: std::unordered_multimap\、...
std::unordered_multimap\::itrator: std::unordered_multimap\::iterator
std::set: std::set\、...
std::set\::iterator: std::set\::iterator、...
std::unordered_set: std::unordered_set\、...
std::unordered_set\::iterator: std::unordered_set\::iterator、...
std::multiset: std::multiset\、...
std::multiset\::iterator: std::multiset\::iterator、...
std::unordered_multiset: std::unordered_multiset\、...
std::unordered_multiset\::iterator: std::unordered_multiset\::iterator、...
std::tuple: std::tuple\、...
std::pair: std::pair\、...
std::complex: std::complex\、...
Date: std::time_t、std::clock_t、...
std::function: std::function\、...
智能指针:std::unique_ptr\、std::shared_ptr\、std::weak_ptr\、... | 已支持,待补充用例 | - | + +### 函数类型 +| 类型 | 状态 | 测试用例路径 | +| -------- | ------------------ | ------------ | +| 同步函数 | 已支持,待补充用例 | - | +| callback | 暂不支持 | - | +| promise | 暂不支持 | - | + +### 类型转换 +| 类型 | 状态 | 测试用例路径 | +| ------ | ------------------ | ------------ | +| class | 已支持,待补充用例 | - | +| struct | 已支持,待补充用例 | - | +| enum | 已支持,待补充用例 | - | +| union | 已支持,待补充用例 | - | \ No newline at end of file -- Gitee From 8c134b37836cec8d3891ddca89060dd3d957df4e Mon Sep 17 00:00:00 2001 From: gou-jingjing Date: Mon, 14 Apr 2025 19:48:32 +0800 Subject: [PATCH 2/3] fix codecheck Signed-off-by: gou-jingjing --- src/vscode_plugin/docs/testcaseTypeMapping.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vscode_plugin/docs/testcaseTypeMapping.md b/src/vscode_plugin/docs/testcaseTypeMapping.md index 9e238e55..47fe1206 100644 --- a/src/vscode_plugin/docs/testcaseTypeMapping.md +++ b/src/vscode_plugin/docs/testcaseTypeMapping.md @@ -28,7 +28,7 @@ | union | 已支持 | parse: `src/test/suite/parse/parsetsunion.test.ts`
gen: 待补充用例 | | type | parse支持,gen暂不支持 | - | -### 其他 +### 其它 | 功能 | 状态 | 测试用例路径 | | ---------------- | -------- | ------------ | | import自定义文件 | 暂不支持 | - | -- Gitee From 351da2577961f1daa6b78b47b381c5437a5a2491 Mon Sep 17 00:00:00 2001 From: gou-jingjing Date: Mon, 14 Apr 2025 20:16:18 +0800 Subject: [PATCH 3/3] fix bug Signed-off-by: gou-jingjing --- src/vscode_plugin/src/gen/tools/gennapiinit.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/vscode_plugin/src/gen/tools/gennapiinit.ts b/src/vscode_plugin/src/gen/tools/gennapiinit.ts index 43ce3b9f..2e4581b3 100644 --- a/src/vscode_plugin/src/gen/tools/gennapiinit.ts +++ b/src/vscode_plugin/src/gen/tools/gennapiinit.ts @@ -35,8 +35,8 @@ export function doGenNapiInitFile(rootInfo: GenInfo, fileContent: string) { classInit = replaceAll(classInit, '[class_method_replace]', clsMethodDeclare); let { clsVariableDeclare, clsVariableGetSetDeclare } = genClsVariableDeclare(classObj); classInit = replaceAll(classInit, '[class_property_replace]', clsVariableGetSetDeclare); + classesInit += classInit; }); - classesInit += classInit; } // struct的声明 @@ -52,8 +52,8 @@ export function doGenNapiInitFile(rootInfo: GenInfo, fileContent: string) { structInit = replaceAll(structInit, '[class_method_replace]', clsMethodDeclare); let { clsVariableDeclare, clsVariableGetSetDeclare } = genStructVariableDeclare(classObj); structInit = replaceAll(structInit, '[class_property_replace]', clsVariableGetSetDeclare); + structsInit += structInit; }); - structsInit += structInit; } if (rootInfo.parseObj && rootInfo.parseObj.funcs) { -- Gitee