*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系検索デフォルトのパスは「;;」で付け加えることが可能。


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