[发明专利]一种基于Lua脚本语言的软件开发辅助系统有效
申请号: | 201710787612.3 | 申请日: | 2017-09-04 |
公开(公告)号: | CN107589940B | 公开(公告)日: | 2020-08-18 |
发明(设计)人: | 徐刚;时鲁艳;王远明;陈芝鑫 | 申请(专利权)人: | 祖龙(天津)科技股份有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/33 |
代理公司: | 北京律恒立业知识产权代理事务所(特殊普通合伙) 11416 | 代理人: | 顾珊;庞立岩 |
地址: | 301700 天津市武清区京津科*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 lua 脚本语言 软件 开发 辅助 系统 | ||
1.一种基于Lua脚本语言的软件开发辅助系统,其特征在于,所述系统包括:
功能实现模块,用于在Lua脚本语言中实现面向对象的功能,包括对类的定义、基本数据类型的定义、类之间的继承,以及变量的定义和控制,其中定义类时,类由变量和方法组成;
变量类型检查模块,用于对变量类型的检查,包括类前置声明,类变量、类方法、方法参数、基本类型以及自定义类型的检查,其中,
类前置声明执行如下过程:
步骤201、类前置声明,定义前置声明类typeName;
步骤202、判断步骤201中定义的前置声明类typeName是否已经被定义,如果是,则进入步骤205;如果否,则进入步骤203;
步骤203、判断步骤201中定义的前置声明类typeName是否已经被声明,如果是,则进入步骤205;如果否,则进入步骤204;
步骤204、创建空类,创建一个名称为typeName的空类,并将这个空类返回,作为参数类型使用;
步骤205、返回已定义的类;
类变量的检查包括类变量定义时的检查和类变量赋值时的检查,包括:
步骤301、定义变量;
步骤302、检查变量类型是否有效,即检查该变量的类型是否是基本数据类型,如果有效,则进入步骤303;如果无效,则提示错误;
步骤303、检查该变量的初值类型与该变量的类是否匹配,如果是,则存储变量,如果否,则提示错误;
步骤304、变量赋值,检查该变量是否为const控制符的变量,如果是,则该变量不赋值,并且进入步骤305;如果否,提示错误;
步骤305、检查所赋值的类型与变量的类型是否匹配,如果是,则存储变量;如果否,则提示错误;
类方法的检查包括类方法定义的检查和类方法调用的检查,包括:
步骤401、定义方法;
步骤402、检查方法参数和返回值的类型;
步骤403、判断步骤402中方法参数和返回值的类型是否有效,如果是,则进入步骤404;如果否,则提示错误;
步骤404、为该方法生成一个存储方法参数和返回值类型的列表;
步骤405、判断定义的方法是否有父类,如果是,则进入步骤S406,如果否,则进入步骤407存储方法;
步骤406、如果定义的该方法是override控制符的方法,则将该方法和父类同名方法进行比较,判断是否匹配,如果是,则进入步骤407存储方法,如果否,则提示相应错误;
步骤407、存储方法;
步骤408、调用方法;
步骤409、将传入值和参数类型与步骤404中类方法定义时生成的列表进行比较,判断是否匹配,如果是,则进入步骤410;如果否,则提示错误;
步骤410、判断返回值类型及个数与步骤404中类方法定义时生成的列表进行比较,判断是否匹配,如果是,则结束调用方法,如果否,则提示错误;
访问控制模块,用于全局变量以及局部变量的访问控制;
动态开关模块,用于在软件开发过程和发布过程中控制开启不同的支持功能。
2.根据权利要求1所述的系统,其特征在于,所述访问控制模块包括非访问控制符,通过在typeMeta表中添加define表,为所述变量和方法提供控制符,来控制所述变量和方法。
3.根据权利要求2所述的系统,其特征在于,所述非访问控制符包括field、const、method、virtual、override、static、final控制符。
4.根据权利要求3所述的系统,其特征在于,通过virtual控制符和override控制符实现多态功能。
5.根据权利要求1所述的系统,其特征在于,所述功能实现模块提供了定义类的语法。
6.根据权利要求1所述的系统,其特征在于,所述功能实现模块通过Extend关键字表明一个类继承自另一个类。
7.根据权利要求1所述的系统,其特征在于,所述功能实现模块通过模拟类的无参数构造函数,进行实例化对象。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于祖龙(天津)科技股份有限公司,未经祖龙(天津)科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710787612.3/1.html,转载请声明来源钻瓜专利网。