[发明专利]一种可扩展自动生成跨平台多语言接口的系统及方法在审
申请号: | 202310290157.1 | 申请日: | 2023-03-23 |
公开(公告)号: | CN116339696A | 公开(公告)日: | 2023-06-27 |
发明(设计)人: | 徐东升;陈诚;张旸 | 申请(专利权)人: | 奥特酷智能科技(南京)有限公司 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/30 |
代理公司: | 南京行高知识产权代理有限公司 32404 | 代理人: | 李晓 |
地址: | 210012 江苏省南京市雨花台*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 扩展 自动 生成 平台 语言 接口 系统 方法 | ||
1.一种可扩展自动生成跨平台多语言接口的系统,其特征在于,包括调用生成模块、函数生成模块、类型转换模块、底层调用生成模块、C封装接口模块;
其中,调用生成模块,基于各种语言的不同,生成对应语言用于调用接口生成系统的最佳方式;
函数生成模块,基于不同语言的特点,生成供不同语言调用的中间函数;
类型转换模块,基于不同语言对于C语言参数类型的对照,把底层调用的参数类型转换为供转换后语言使用的参数类型;
底层调用生成模块,用于调用底层C模块的代码实现;
C封装接口模块,用于封装底层语言实现,以达到暴露接口给上层各种语言,屏蔽底层实现的目的。
2.根据权利要求1所述的可扩展自动生成跨平台多语言接口的系统,其特征在于,调用生成模块,基于各个语言的不同,在各个调用的语言中生成对接口生成系统的调用代码。
3.根据权利要求1所述的可扩展自动生成跨平台多语言接口的系统,其特征在于,函数生成模块,根据不同的语言,生成用于该种语言调用的中间函数形式;中间函数原型为voidfunc(int i);,根据不同的语言和操作系统的不同,生成相应语言的不同的中间函数原型用于调用。
4.根据权利要求3所述的可扩展自动生成跨平台多语言接口的系统,其特征在于,Java中间函数接口为JNIEXPORT void JNICALL PackageName_ClassName_func(JNIEnv,jclass,jint);,
C#中间函数接口为extern"C"_decispec(dllexport)int func(void);,
Rust中间函数接口在Windows系统为extern"C"_decispec(dllexport)int func(void);,在LinuxMac系统中为extern"C"_attribute((visibility("default")))voidfunc(int);。
5.根据权利要求1所述的可扩展自动生成跨平台多语言接口的系统,其特征在于,类型转换模块,通过输入参数得到的变量定义与声明,根据需要转换的语言类型,通过查找对应语言的类型对应表,找到需要转换的类型,来重新定义声明对应语言的一条或多条转换后的语句。
6.根据权利要求1所述的可扩展自动生成跨平台多语言接口的系统,其特征在于,底层调用生成模块,在上面各个模块生成代码的基础上,嵌入可直接调用的C代码,完成从顶层的各种语言到C层的调用。
7.根据权利要求1所述的可扩展自动生成跨平台多语言接口的系统,其特征在于,C封装接口模块,封装底层面向对象语言C++的底层实现,隐藏对象的定义与维护,只暴露最基本的数据操作,返回最基本各个语言的基本类型。
8.一种可扩展自动生成跨平台多语言接口的方法,基于权利要求1-7任一所述的可扩展自动生成跨平台多语言接口的系统,其特征在于,具体包括步骤:
(1)基于各个语言的不同,生成对应调用语言中用于调用接口生成系统的最佳方式,形成对接口生成系统的调用代码;
(2)基于不同语言的特点,生成供不同语言调用的中间函数;
(3)基于不同语言对于C语言参数类型的对照,把底层调用的参数类型转换为供转换后语言使用的参数类型;
(4)在上面各个模块生成代码的基础上,嵌入可直接调用的C代码,完成从顶层的各种语言到C层的调用;
(5)封装底层面向对象语言C++的底层实现,隐藏对象的定义与维护,只暴露最基本的数据操作,返回最基本各个语言的基本类型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于奥特酷智能科技(南京)有限公司,未经奥特酷智能科技(南京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310290157.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种锡终端半导体材料及其制备方法
- 下一篇:烟气余热利用系统及燃煤机组