「NeoLuaのインストールとハローワールド」の版間の差分
imported>Administrator |
Administrator (トーク | 投稿記録) 編集の要約なし |
||
| 13行目: | 13行目: | ||
「clr」で標準の名前空間にもアクセスできる。 | 「clr」で標準の名前空間にもアクセスできる。 | ||
<source lang="csharp"> | <source lang="csharp"> | ||
using (var lua = new Lua()) | |||
{ | |||
dynamic g = lua.CreateEnvironment(); | |||
g.dochunk(@" | |||
s = 'hello world'; | |||
clr.System.Console.WriteLine(s); | |||
"); | |||
} | |||
</source> | </source> | ||
| 27行目: | 27行目: | ||
ついでにまったく関係ないことだがLuaでの文字列連結は「..」だ。 | ついでにまったく関係ないことだがLuaでの文字列連結は「..」だ。 | ||
<source lang="csharp"> | <source lang="csharp"> | ||
using (var lua = new Lua()) | |||
{ | |||
var env = lua.CreateEnvironment(); | |||
env.DoChunk(@" | |||
name = 'foo'; | |||
function Hello() | |||
return 'hello ' .. name; | |||
end | |||
","test.lua"); | |||
var ret1 = env.CallMember("Hello"); | |||
Console.WriteLine(ret1.ToString()); | |||
env.SetMemberValue("name", "bar"); | |||
var ret2 = env.CallMember("Hello"); | |||
Console.WriteLine(ret2.ToString()); | |||
} | |||
</source> | </source> | ||
[[category: NeoLua]] | [[category: NeoLua]] | ||