*Luaリファレンス 要注意点 ~スコープ~ [#sf56524d] **その場でスコープ作成 [#ubc6ab82] -汎用的に新たなスコープを作りたい場合は、do~end が C++でいう { } の代わりとなる。 #sh(lua){{ local a2 = 5 do local a2 = 2*2 ... end print(a2) --> 5 }} **スコープとreturn [#ldeea1c7] -C,Perl,Pythonなどと異なり, LUAではreturnを「ブロックの最後]にしか記述出来ない。 #sh(lua){{ function abc(x) return ----> エラー。ブロックの最後じゃないのにreturnしている。 print(x) end }} -このため、デバッグ時等で、一時的にreturnしてしまいたい場合は、以下のようにブロック化する。 #sh(lua){{ function abc(x) do return end ----> OK。 print(x) end }}