Устаревшие члены класса QScriptEngineОписанные ниже члены класса устарели. Они оставлены для обеспечения совместимости со старым кодом. Мы настоятельно не рекомендуем использовать их в новом коде. Открытые функции
Связанные нечлены класса
Описание функций-членовbool QScriptEngine::canEvaluate ( const QString & program ) constВозвращает true если program может быть выполнена; т.е. код является достаточным, чтобы определить выглядит ли программа синтаксически корректной или содержит синтаксическую ошибку. Эта функция возвращает false если program не полноценна; т.е. ввод синтаксически корректен до момента завершения ввода. Обратите внимание на то, что эта функция проводит только статическую проверку program; например, она не проверяет валидность ссылок на переменные и так далее. Обычное использование canEvaluate() заключается в реализации интерактивного интерпретатора для QtScript. Пользователь неоднократно запрашивает отдельные строки кода; строки соединены внутренне, и только когда canEvaluate() возвращает true для итоговой программы она передаётся в evaluate(). Далее приведены несколько примеров для иллюстрации поведения canEvaluate(). (Обратите внимание на то, что ввод во всех примерах предполагается наличие явного перевода строки в последнем символе, поскольку в противном случае парсер QtScript автоматически вставит символ точки с запятой в конце ввода, а это приведёт к другому результату, произведённому canEvaluate().) Получаем ввод if (hello && world) print("hello world"); canEvaluate() возвратит true, поскольку программа выглядит завершённой. Получаем ввод if (hello && canEvaluate() возвратит false, поскольку оператор if не завершён, однако синтаксически корректно до этого места. Получаем ввод 0 = 0 canEvaluate() возвратит true, но evaluate() сгенерирует исключение SyntaxError на один и тот же полученный ввод. Получаем ввод ./test.js canEvaluate() возвратит true, даже если код явно не является синтаксически корректным кодом QtScript. evaluate() возбудит исключение SyntaxError при выполнении этого кода. Получаем ввод foo["bar"] canEvaluate() возвратит true, но evaluate() возбудит исключение ReferenceError, если foo не определен в окружении скрипта. Смотрите также evaluate() и checkSyntax(). Связанные нечлены классаQScriptValue qScriptValueFromValue ( QScriptEngine * engine, const T & value )Создаёт QScriptValue, используя заданный механизм engine с заданным значением value шаблонного типа T. Эта функция эквивалентна QScriptEngine::toScriptValue(). Замечание: Эта функция была предоставлена в качестве обходного пути для MSVC 6, который не поддерживал шаблонные функции-члены. В новом коде рекомендуется использовать другую форму. Эта функция была введена в Qt 4.3. Смотрите также QScriptEngine::toScriptValue() и qscriptvalue_cast(). |
Попытка перевода Qt документации. Если есть желание присоединиться, или если есть замечания или пожелания, то заходите на форум: Перевод Qt документации на русский язык... Люди внесшие вклад в перевод: Команда переводчиков |