NeoLuaの値と型

提供: MonoBook
2018年10月22日 (月) 01:58時点におけるimported>Administratorによる版 (ページの作成:「純正Lua動的型付け言語だが、NeoLua型推論であり変数は常に特定の「」を持つ。この点が純正Luaとは大...」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

純正Lua動的型付け言語だが、NeoLua型推論であり変数は常に特定の「」を持つ。この点が純正Luaとは大きく異なる。

NeoLuaの型は.NETの型に対応するものがほぼ存在する。なお、.NETのdynamic型もサポートされているので、dynamic型を使えば純正Luaっぽく動的型付け言語として使えないこともない。

対応表

NeoLua .NET 備考
nil System.Object
false/true System.Boolean
number System.Double 小数点がある場合はDouble型になる。
number System.IntXX 数値の大きさで自動的に決まる
string System.String 純正Luaの文字列はバイト配列だがNeoLuaはString型な点に注意
function System.Delegate functionはデリゲートにコンパイルされる。つまり関数ポインタになる。
userdata 存在せず
thread 存在せず
table Neo.IronLua.LuaTable

型変換の法則

local a = 23 + "42"; -- 32ビット整数
local b = 23 .. "42"; -- 文字列
local c : byte = "23"; -- 8ビット整数
local d : int = nil; -- 整数型が明示されている場合は「nil」は「0」になる