Luaリファレンス 要注意点 ~モジュール作成~

モジュールの作成

module ("モジュール名", package.seeall)

module 化すると、モジュールファイルの中では、グローバル変数が使えなくなってしまうので、
それを使えるようにするために package.seeall がある。
事実上第2引数には、package.seeall 以外は指定出来ない。

モジュール名.lua というファイルに作るのが良い。

このモジュールには、_M, _NAME, _PACKAGE にそれぞれ、モジュールテーブル、モジュール名、パッケージ名が格納される。

モジュールのロード

require

local m = require "io"
m.write("hello world\n")

for w in pairs(m) do
    print(w)
end

のような形となる。

ジュールがロード済

package.loaded( ) で判定可能。(有効な値[通常テーブルのアドレス])が入っている。
たとえば、

package.loaded["io"]

パスの検索(Luaライブラリ)

たとえば、

require "sql"

と書いた場合、

の順番で検索する。

パスの検索(Cライブラリ)

たとえば、

require "sql"

と書いた場合、

の順番で検索する。

パスと環境変数

環境変数LUA_PATH

Luaモジュール用のパスは環境変数 LUA_PATH で設定が可能。
その際には、LUAのデフォルトのパスは「;;」で付け加えることが可能

環境変数LUA_CPATH

Cモジュール用のパスは環境変数 LUA_CPATH で設定が可能。
その際には、LUAのC系検索デフォルトのパスは「;;」で付け加えることが可能。


トップ   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS