import com.riaone.deval.D;
var six:int;
six = D.eval("4 + 2") as int;
six = D.evalToInt("var x=0; for(i=1;i<=3;++i)x+=i;return x");
six = D.evalToInt("a * b", {a:2, b:3});
six = D.evalToInt("f(5)", {f:function(x:int):int{return x+1}});
six = D.evalToInt("xml.@size*2", {xml: });
six = D.evalToInt('xml= ; return xml.@size*2');
Язык, используемый в D.eval() - это Deval. Он поддерживает все AS3 выражения, включая E4X; он имеет доступ к AS3 классам и функциям, но сам их не задает. Типа, новый шаг в разработке Flex-приложений.
Загрузить можно здесь.
7 комментариев:
Интересно, это новый шаг в разработке Flex-приложений вперед или назад...
хорошая библиотечка
Если интересно, посмотрите XMLScriptEngine: http://blog.janvarev.ru/?p=5
Там тоже язык вычисления выражений в AS3, но на базе XML.
у этой библионтеки есть один существенный минус - используется статический класс D. А это значит, что например нельзя производить вычисления с использованием одной и тоже функции но у разных инстансов класса. Т.е. кроме как 2 + 2 ничего серьезного не напишеш. Странно как разработчики могли не предуспотреть это.
Да уж. Как говорится в устоявшемся выражении:
Благодаря нам в НАШИХ женщинах что-то есть.. по меньшей мере, 4 минуты в день.
Да уж. Как говорится в устоявшемся выражении:
Мы уважаем своих экономических партнеров: америкосов, итальяшек и китаёз.
Да уж. По поводу коментариев - навеяла на меня где-то услышанная фраза:
Именно в НАШЕЙ стране есть все, кроме 11 нормальных футболистов...
Отправить комментарий