每一个GIRL源文件构成一个GIRL模块。为了支持模块功能,GIRL语言提供了下述语句(斜体字表示 命令参数。出现在方括号内的内容为可选的命令参数):
module语句用于给出本GIRL文件的模块名。在一个GIRL文件中,必须出现一个,并且仅仅能够出现 一个module语句。
version用于给出本模块的版本号。在一个GIRL文件中,必须出现一个,并且仅仅能够出现一个version 语句。如果末版本号不出现,则看作0。如果次版本号不出现,则看作0。
GIRL源文件经过编译器girlc编译后,将生成两个文件:.i.h、.i.c或.i.cpp。在GIRL源文件中可以 按照如下形式给出直接被插入由girlc生成的头文件和源文件的内容:
为了与C/C++协同工作,GIRL模块必须能够被C/C++所访问。为此,GIRL提供了下列函数:
该函数用于创建模块对象。为了避免C/C++函数名冲突,函数名中含有模块名。该函数将在由girlc生成 的头文件中给出说明。在引入了这个头文件之后就可以直接调用了。这种调用方式即适用于编译时连接的 GIRL模块,也适用于Plug-in。但前提是应用程序必须知道需要创建的模块名。
该函数用于安装给定模块。返回模块句柄。如果安装不成功,返回ghnull。
该函数在安装给定模块之前首先检测模块版本号。如果版本号不能满足要求,则立即退出并且给出出错信息。 给出错误信息的方式与girl_check_version的方式完全相同。
该函数返回给定模块的主版本号。
该函数返回给定模块的次版本号。
该函数返回给定模块的末版本号。
该函数用于卸载给定模块。girl_uninstall_module将根据需要自动释放模块占用的系统资源。
该函数用于获取指定标识符所对应的句柄。