Определение типа объекта
В INSTEAD существует два способа определить тип объекта. Первый - с помощью функции std.is_obj(переменная, [тип]).
Например:
lua
a = room {
nam = 'объект';
};
dprint(std.is_obj(a)) -- выведет true
dprint(std.is_obj('объект')) -- выведет false
dprint(std.is_obj(a, 'room')) -- выведет true
dprint(std.is_obj(a.obj, 'list')) -- выведет truestd.is_obj() удобная для определения типа переменной или аргумента функции.
Второй способ связан с использованием метода type:
lua
a = room {
nam = 'объект';
};
dprint(a:type 'room') -- выведет true