[发明专利]一种基于动态编译的代码编译生成工具和一种动态编译方法在审
| 申请号: | 201910232583.3 | 申请日: | 2019-03-26 |
| 公开(公告)号: | CN109947430A | 公开(公告)日: | 2019-06-28 |
| 发明(设计)人: | 周由甲;张进;王洁 | 申请(专利权)人: | 山东浪潮通软信息科技有限公司 |
| 主分类号: | G06F8/41 | 分类号: | G06F8/41 |
| 代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 陈婷婷 |
| 地址: | 250100 山东省*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 动态编译 代码编译 生成模块 计算机软件应用 代码动态 代码生成 代码文件 方法使用 方式编译 工具实现 工作效率 生成文件 用户使用 自定义 编译 文本 门槛 | ||
1.一种基于动态编译的代码编译生成工具,该工具实现代码的动态编译和生成,其特征在于该工具包含以下步骤:
1)、按照程序集结构划分生成模块;
2)、支持生成文件类型和路径的选择;
3)、支持生成方法自定义扩展;
4)、支持导入文本的方式编译生成代码文件。
2.根据权利要求1所述的一种基于动态编译的代码编译生成工具,其特征在于所述程序集结构包括程序集、命名空间、类/接口/枚举类、方法/属性/字段、标签;相应的,该工具生成的模块包括程序集生成模块、命名空间生成模块、类/接口/枚举类生成模块、方法/属性/字段生成模块、标签生成模块。
3.根据权利要求2所述的一种基于动态编译的代码编译生成工具,其特征在于程序集生成模块中包含生成程序集中所需要的信息,包括程序集名称,引用的程序集集合,文件类型,生成类型,生成路径,及命名空间生成模块集合。
4.根据权利要求2所述的一种基于动态编译的代码编译生成工具,其特征在于命名空间生成模块中包含生成命名空间所需要的信息,包括命名空间名称,及包含的类/接口/枚举类生成模块。
5.根据权利要求2所述的一种基于动态编译的代码编译生成工具,其特征在于类生成模块描述了类生成时需要的信息,包括类名称,实现接口集合,父类类型,修饰符类型,包含的字段/属性/方法生成模块,及标签生成模块;
接口生成模块,描述了接口生成时需要的信息,包括接口名称,实现接口集合,修饰符类型,包含的字段/属性/方法生成模块,及标签生成模块;
枚举类生成模块描述了枚举类生成时需要的信息,包括枚举类名称,命名空间名称,父类类型,修饰符类型,以及枚举值字典。
6.根据权利要求2所述的一种基于动态编译的代码编译生成工具,其特征在于方法生成模块包含了生成方法所需要的信息,包括方法名称,方法返回值类型,修饰符,参数列表,是否显示实现,显示实现类型,及方法体语法树;
属性生成模块包含了生成属性所需要的信息,包括属性类型,属性名称,修饰符,Get方法方法体语法树,是否包含Set方法,Set方法方法体语法树,是否显示实现,显示实现类型,及包含的标签生成模块;
字段生成模块包含了生成字段所需要的信息,包括字段类型,字段名称,修饰符,及初始值语法树。
7.根据权利要求6所述的一种基于动态编译的代码编译生成工具,其特征在于所述的方法生成模块衍生出构造函数生成模块,包括类名称,修饰符,参数列表,构造函数初始化器类型,构造函数初始化器参数,构造函数方法体语法树。
8.根据权利要求2所述的一种基于动态编译的代码编译生成工具,其特征在于标签生成模块包含了生成标签所需要的信息,包括标签名称,标签参数列表。
9.根据权利要求1所述的一种基于动态编译的代码编译生成工具,其特征在于该工具支持的应用类型包括生成控制台应用、Windows窗体应用和类库,支持生成到内存和生成到物理文件,生成物理文件时支持路径选择;
该工具支持生成方法自定义扩展,屏蔽现有生成模块,将自定义模块注册到工具中;
该工具支持用户将已编写好的文本格式的类或接口的代码直接导入到工具中并编译生成。
10.一种动态编译方法,其特征在于该方法使用代码编译生成工具,实现代码的动态编译和生成,
代码生成时,通过代码编译生成工具按照程序集结构划分生成模块,生成相应的程序集结构;
该方法在代码生成时,支持生成文件类型和路径的选择,支持生成方法自定义扩展,支持导入文本的方式编译生成代码文件,用户将已编写好的文本格式的类或接口的代码直接导入到所述工具中编译生成。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东浪潮通软信息科技有限公司,未经山东浪潮通软信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910232583.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:数据处理方法及装置
- 下一篇:一种代码生成方法、装置、设备及存储介质





