Parse components 2015 1.0.3

By Yuriy Pisarev

Freeware 13 Nov 2015

In category

Components > Tools > Tools

Description

The components are intended for Delphi developers and perform high-speed (about 10 million evaluations per second) mathematics and boolean calculations. All components are available for Delphi 6, Delphi 7, Delphi 2005, Delphi 2006, Delphi 2007, Delphi 2009, Delphi 2010, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Delphi XE8, Delphi 10 Seattle. Please note that the samples do not require components installation (however installation is possible and in case when installed you find the components on "Samples" page of the pallete). You may open the Delphi project file (*.dpr) in the sample folder and simply run it.

Some features of the parse components:

  • It is possible compiling the expression into the script and further using that script in calculations;
  • It is possible decompiling the expression into the string;
  • It is possible making user-defined functions. User-defined functions can be of five types:
    • A function requiring no parameters. Such function simply returns some result;
    • A function requiring parameter before itself;
    • A function requiring parameter after itself;
    • A function requiring both parameters - before and after itself;
    • A function requiring a number of parameters, following right after the function and enclosed in round brackets. These parameters can be of string type;
  • Each function has a priority (meaningful only when function requires expression before or after itself) determining its execution order within the formula;
  • It is possible making variables;
  • It is possible making a direct reference to the simple variable of type like Byte, Integer, etc.;
  • It is possible making constants;
  • It is possible making types;
  • It is possible optimizing the expression. Optimization is simplifying of mathematic expression (if possible) at binary level; the result is an increase in evaluation speed;
  • It is possible working in multi-threaded mode. Multi-threaded mode provides the best performance due to simultaneous evaluation the elements in array of expressions;
    • It is possible using the internal automatic thread - to use it we only need to fill the expression array, start the execution and wait until all threads are done. You are able to set up a number of parameters for managing the threads, for example, define the amount of automatic threads, adjust the priority of each automatic thread and more;
    • It is possible using user-defined (Classes.TThread inheritor) threads;
  • It is possible making variables and building a dependency chain of any depth, where each variable depends on the previous one;
  • It is possible making your own variable lists (each element of the list looks like NAME=VALUE) and connecting them to the parser.
30.06.2015 - Fixed a bug that appeared when cache had added negative value. The bug might cause wrong result when computing the expression. 12.11.2015 - Parse components now support Delphi 10 Seattle.

Informations

  • Status: Fully functional
  • Source: FW
  • Size: 1 928 403kB

Platforms:

  • Delphi 2005 (VCL)
  • Delphi 2006 (Win32)
  • Delphi 2007 (VCL)
  • Delphi 2009
  • Delphi 2010
  • Delphi 7
  • Delphi XE
  • Delphi XE 2
  • Delphi XE3
  • Delphi XE4
  • Delphi XE5
  • Delphi XE6
  • Delphi XE7
  • Delphi XE8

Downloads