*Luaリファレンス 要注意点 ~モジュール作成~ [#v6817fc2] **モジュールの作成 [#qc83d44d] ***module ("モジュール名", package.seeall) [#iee8347c] >module 化すると、モジュールファイルの中では、グローバル変数が使えなくなってしまうので、~ それを使えるようにするために package.seeall がある。~ 事実上第2引数には、package.seeall 以外は指定出来ない。~ ~ モジュール名.lua というファイルに作るのが良い。~ ~ このモジュールには、''_M, _NAME, _PACKAGE'' にそれぞれ、モジュールテーブル、モジュール名、パッケージ名が格納される。 **モジュールのロード [#eb7ed234] ***require [#r747826d] >~ #sh(csharp){{ local m = require "io" m.write("hello world\n") for w in pairs(m) do print(w) end }} のような形となる。 **ジュールがロード済 [#x2be709b] >package.loaded( ) で判定可能。(有効な値[通常テーブルのアドレス])が入っている。~ たとえば、~ #sh(csharp){{ package.loaded["io"] }} **パスの検索(Luaライブラリ) [#b63cc2e4] >たとえば、 #sh(csharp){{ require "sql" }} と書いた場合、 --''sql'' --''sql.lua'' --''c:\windows\sql'' --''/usr/local/lua/sql/sql.lua'' >の順番で検索する。 **パスの検索(Cライブラリ) [#b63cc2e4] >たとえば、 #sh(csharp){{ require "sql" }} と書いた場合、 --''.\?.dll'' --''C:\Program Files\Lua501\dll\?.dll'' >の順番で検索する。 **パスと環境変数 [#b19a56a7] ***環境変数LUA_PATH [#l029cb49] >Luaモジュール用のパスは環境変数 LUA_PATH で設定が可能。~ その際には、LUAのデフォルトのパスは「;;」で付け加えることが可能 ***環境変数LUA_CPATH [#ta2d4531] >Cモジュール用のパスは環境変数 LUA_CPATH で設定が可能。~ その際には、LUAのC系検索デフォルトのパスは「;;」で付け加えることが可能。