если нужно просто получить класс то так: Type.getClass(value); ну а если хочется непременно через switch, то можно так:
Type.getClass(value);
http://haxe.ru/node/274
Можно так ещё:
<code>
<blockcode>
Подробнее о форматировании
Type.getClass / Type.getClassName
если нужно просто получить класс то так:
Type.getClass(value);ну а если хочется непременно через switch, то можно так:
{
case 'Int': trace("I am Int");
case 'String': trace("I am String");
default: trace("I am Unknown");
}
Рабочий вариант на switch
{
case "TInt": trace("I am Int");
case "TClass([class String])": trace("I am String");
default: trace("I am Unknown");
}
Type.getClass / Type.getClassName
{
case 'Int': trace("I am Int");
case 'String': trace("I am String");
default: trace("I am Unknown");
}
Я так тоже писал. С типом Int и Float такой подход не работает.
f("abcdef");
f(new Shape());
В Trace получим:
I am String
I am Unknown
Type.getClass(...) от Int и Float выдает null.
Описал способы решения в блоге
http://haxe.ru/node/274
Можно так
Можно так ещё:
{
case Std.is(value, Int): trace("I am Int");
case Std.is(value, String): trace("I am String");
default: trace("I am Unknown");
}
Отправить комментарий