tolua中的每个文件

all.lua : 加载lua目录下的所有文件

compat-5.1.lua : dofile的定义

compat.lua : 主要是table debug math  string  io函数的定,

basic.lua : 基本的c类型定义, 全局变量的定义(类型、枚举、类类型、名字重命名(pkg中

@重定义)),一些全局函数的定义

feature.lua : 基本上是后面需用定义的所有的类的元表,我们可以称之为基类,所定义的类classFeature中的函数supcode decltype register preamble requirecollection 基本就是tolua++的逻辑实现了

verbatim.lua :classVerbatim继承classFeature(其实是设置classFeature为它的元表),我称为直译类,基本上是把当前这一行代码,不用处理直接写入到cpp文件中

code.lua : classCode继承classFeature,处理代码中嵌入的lua代码,翻译成c代码,使用tolua_dobuffer去调用

typedef.lua : classTypedef 继承classFeature, C代码中的C typedef 语法

container.lua: classContainer继承classFeature,  classContainer中包含了一组需要去分开解析的feature对象,container 中当前对象由游标curr去标示,下一个对象由curr.prox去标示,该lua文件中还包含了存在全局typedef 和enum的声明

package.lua :classPackage继承classContainer,当前工作环境下,所有的需要待解析的对象的package

module.lua : classModule继承classContainer,模块的概念,一个类是一个模块,一个名字空间是一个模块的概念

namespace.lua :classNamespace 继承classModule,名字空间,这个不用说了

define.lua :classDefine 继承 classFeature ,数字常量的定义,使用tolua_constant

enumerate.lua: classEnumerate继承 classFeature

declaration.lua : classDeclaration 继承classFeature ,变量,函数,参数的声明

variable.lua :classVariable 继承classDeclaration,extern的变量,或类的public成员变量

array.lua :classArray 继承 classDeclaration, extern的数组,或类的public成员数组

function.lua :classFunction 继承classFeature , 函数或类的成员函数

operator.lua :classOperator 继承classFunction,操作符函数,或类的operator成员函数

template_class.lua : classTemplate的元表即自身,模板类

class.lua :classClass继承classContainer,c++的类

clean.lua : 定义了clean函数,清楚代码中的注释

doit.lua : 程序的执行流程,前面已经说过了


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值