Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

Краткое описание Innerfuse Pascal Script

Delphi , Синтаксис , Синтаксис

Краткое описание Innerfuse Pascal Script

Оформил: DeeCo

Автор: Николай Васильев

Innerfuse Pascal Script — встраиваемый в приложение "движок" для выполнения скриптов непосредственно в программе. Название Innerfuse Pascal Script URL http://www.carlo-kok.com/projects.php?projectname=pascalscript Распространение FreeWare

Поддерживает:
  1. стандартные типы: Byte, Shortint, Char, Word, SmallInt, Cardinal, Longint, Integer, String, Real, Double, Single, Extended, Comp, Boolean, Array, Record, Variant;
  2. классы (также объявленные во внешнем скрипте);
  3. переменные, константы;
  4. библиотеки для работы с DLL, вызова функций Delphi, преобразований типов, работы с визуальными объектами;
  5. стандартные выражения: Begin/End, If/Then/Else, For/To/Downto/Do, Case x Of, Repeat/Until, While, With, Uses, Try/Except/Finally Exit, Continue, Break;
  6. функции, процедуры, параметры Array of Const, Var;
  7. позволяет одновременно в одном приложении запускать несколько экземпляров PascalScript и при этом каждый из них могут между собой иметь интерфейс.
Как пишет автор, синтаксис Innerfuse Pascal Script является практически тем же, что и в Delphi Object Pascal за исключением указателей, которые в данном продукте не поддерживаются.

Сам "движок" не является компонентом, это - набор модулей (ifspas (основной), ifs_utl, ifs_var, ifs_obj). Чтобы его использовать в своём приложении, нужно:
uses
  ifspas, ifs_utl, ifs_var;

var
  ScriptEngine: TIFPasScript;

  //В событии onCreate формы:
  ScriptEngine := TIfPasScript.Create(nil);
  //В событии OnDestroy формы:
  ScriptEngine.Free;
  //В  событии,  по  котоорому  запускается  скрипт  (исключая редактор,
  //который содержит текст скрипта):
  ScriptEngine.SetText(memo1.text);
  Scriptengine.RunScript;
  //Теперь можно осуществлять проверку ошибок
Наличествует обработка ошибок с помощью типа TIFSError. TIFSError используется для запоминания текущей ошибки, выданной при работе скрипта.
TIFSError = record
  ErrorCode: TIfPasScriptError;
  ErrorPosition: Longint;
  ErrorParam: string;
  ErrorModule: string;
end;
TIfPasScriptError - тип, содержащий коды ошибок. Имеется возможность "отлавливать" целый набор ошибок, таких как:
"Compile Time" Errors:
ENoError - нет ошибки
ECanNotReadProperty
ECanNotWriteProperty
EUnknownIdentifier
EIdentifierExpected
ESemicolonExpected
EBeginExpected
EDuplicateIdentifier
EUnexpectedEndOfFile
EColonExpected
ESyntaxError
EStringError
EErrorInStatement
EAssignmentExpected
ETypeMismatch
EErrorInExpression
ERoundOpenExpected
ERoundCloseExpected
EVariableExpected
ECommaExpected
EThenExpected
EPeriodExpected
EParameterError(RunScriptProc)
EToExpected
EDoExpected
EOfExpected
EEndExpected
EOpenBlockExpected
ECloseBlockExpected
EConstantExpected
EIsExpected
EIntegerExpected
ECloseRoundExpected
EUntilExpected
EClassNotAllowedHere
EClassTypeExpected
ECanNotOverride
EUnsatisfiedForward
EConstructorExpected
ENoInheritedAllowedHere
ECanNotReadOrWriteProperty
EObjectExpected
ECommentError
ECharError
EExceptExpected
EStringExpected
EUnitNotFound
ENotSupported
"Runtime" Errrors
EClassNotCreated
EOutOfRange
EDivideByZero
EExitCommand
EClassAlreadyFreed
EClassReferenceNotAssigned
EVariantIsNil
ECustomError
EOutOfMemoryError
Имеется возможность выполнения основных математических операций, набор функций преобразований типов и работы со строками, классы, подобые TList и TStringList.

При работе с классами поддерживаются свойства, наследование, полиморфизм.

Очень многие возможности продемонстрированы в демо-проекте, имеется довольно подробный файл помощи, содержащий описание основных модулей и типов.

Резюме: довольно мощный инструмент для приложений, в которых необходимо выполнять программирование "на лету". По всей видимости, вполне способен устранить необходимость использования в своих приложениях MS Script Control для подобных действий. Проект постоянно развивается, периодически выходят обновления с исправлениями обнаруженных ошибок, а также с добавлениями новых возможностей.

При беглом обзоре возможностей продукта явных недостатков обнаружено не было, если не считать мелких недочётов в демо-скриптах (в некоторых пропущены строки, из-за чего скрипт не работал, а выдавал сообщение об ошибке, но эти недочёты в принципе очевидны, поэтому без труда устраняются).

Статья Краткое описание Innerfuse Pascal Script раздела Синтаксис Синтаксис может быть полезна для разработчиков на Delphi и FreePascal.


Комментарии и вопросы


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Синтаксис ::


реклама



©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100
19.04.2024 20:39:40/0.037571907043457/0