转载出处:http://my.oschina.net/xhan/blog/306308
源文件简介:
floatingpoint.h 空文件,没什么用。
hash.h 最大的结构的保存位置,Lua 中需要内存回收的都放在它里面,比如 string 和 关联数组。
inout.h 从文件名可以看出是输入输出,实际上也是。
lua.h, lualib.h: Lua 头文件,库的头文件,使用 Lua 的时候包含这两个头文件就可以了。 例如 lua.c 这个 Lua 宿主就是引用了这两个文件。
opcode.h 虚拟机指令还有一些数据结构的操作宏。
table.h 关联数组,Lua 里最重要的数据结构了。
y_tab.h yacc 用的头文件。
hash.c 最大结构的实现,哈希表的实现。这个应该算是 Lua 里最大最主要的结构了。
inout.c 输入输出,从文件或字符串中读出 Lua 代码。
iolib.c io 库,一些 io 的实现
lex_yy.c 由 lex 生成的词法分析
lua.c Lua 自带的宿主,虽然比较简单,但是也是个小的语言解释器了。 lua 做为一种嵌入式语言,要在一个宿主里面运行,这个宿主的一个例子就是这里的 lua.c 这个命令行风格式的宿主。
mathlib.c 数学库,一些常用的数学功能函数。
opcode.c 虚拟机的实现。
strlib.c 字符串操作库 通过这几个库文件,可以看出如何在 C 语言里面取得 lua 的数据及如何自定义自己的库。
table.c 表的实现,这里面实现了不少好东西,比如内置的几个系统函数。 Lua 的系统函数都存在 tablebuffer 里。
y_tab.c 由yacc 生成的语法解释器