2017-01-13 16 views
1

私はルア5.2を私のCプログラムに埋め込もうとしています。luaに別のluaスクリプトをロードさせる方法は?

私はLuaスクリプトにrequireを可能にし、別のスクリプトを読み込ませます。どうやってするの?

lua_script 
    - main.lua 
    + utils 
    - custom_loader.lua 
    + globals 
    - scene_globals.lua 
    - scene_levels.lua 

main.luacustom_loader.luaからrequireおよびインポート機能にしようとします、のように...

ライトせずにこれを実行することが可能です:

はLuaの一部は、このようなファイル構造を持っていると仮定しますCの一種のラッパー? Luaスクリプトは自動的に必要なものすべてを読み込むことができますか?

(詩。私は今のところない、本当に必要サンドボックスを行うため、スクリプトはそれがやりたいのは大丈夫です。)Luaのでdecribedとして

+0

私は 'require'はあなたが好きなように定義できる関数だと思います。 –

+0

@KerrekSBだから、私は 'require 'としてC関数をプッシュし、スクリプトが望むすべてのファイルに対して' luaL_loadfile() 'を実行する必要がありますか? –

+0

はい、可能性としては、 'require'呼び出しを解決する独自のサーチャーシステムを書くことです。しかし、組み込み施設を使用するより単純なソリューションがあるかもしれません。 –

答えて

2

man pageを必要とし、それがファイル内を検索します通り。

このパスはC. で定義することができますが、この記事に見てください:"Setting the global LUA_PATH variable from C++/C"

必要機能は.luaファイルで定義されたモジュールやライブラリをロードすることは非常に実用的です。

+0

これはLua 5.2でも使えますか? –

+0

@Tito:そうだと思います。 –

関連する問題