Units
Class Hierarchy
Classes, Interfaces and Objects
Types
Variables
Constants
Functions and Procedures
Identifiers

Unit ifps3utl

Description

Misc Types and functions

This unit contains types and functions used by the compiler and executer

Classes, Interfaces and Objects

NameDescription
Class TIfList TIfList is the list class used in IFPS3
Class TIfPascalParser TIfPacalParser is the parser used to parse the scripts
Class TIfStringList TIFStringList is the string list class used by IFPS3

Functions and Procedures

Overview

function FastLowerCase(const s: String): string;
function FastUpperCase(const s: String): string;
function FloatToStr(E: Extended): string;
function Fw(const S: string): string;
function GRFW(var s: string): string;
function IntToStr(I: LongInt): string;
function MakeHash(const s: string): Longint;
function StrToInt(const S: string): LongInt;
function StrToIntDef(const S: string; Def: LongInt): LongInt;

Description

function FastLowerCase(const s: String): string;

Fast lowercase

function FastUpperCase(const s: String): string;

Fast uppercase

function FloatToStr(E: Extended): string;

Convert a float to a string

function Fw(const S: string): string;

Return the first word of a string

function GRFW(var s: string): string;

Get the first word and remove it

function IntToStr(I: LongInt): string;

Integer to string conversion

function MakeHash(const s: string): Longint;

Make a hash of a string

function StrToInt(const S: string): LongInt;

String to integer

function StrToIntDef(const S: string; Def: LongInt): LongInt;

String to integer

Types

NameDescription
PPointerList PPointerList is pointing to an array of pointers
tbtchar Chat type
TbtDouble Double
TbtExtended Extended
TbtS16 Smallint
TbtS32 Integer/Longint
tbts64 An 8 byte signed integer (int64)
TbtS8 Shortint
TbtSingle Single
TbtString String/Pchar
TbtU16 word
TbtU32 Cardinal/Longword
TbtU8 Byte
tbtwidechar widechar type
tbtwidestring widestring type
TIFParserErrorEvent  
TIFParserErrorKind TIFParserErrorKind is used to store the parser error
TIfPasToken TIFPasToken is used to store the type of the current token
TIFPSBaseType TIFPSBaseType is the most basic type -type
TIFPSCallingConvention calling convention type
TIFPSVariableType OnUseVariable TIFPSVariableType is used in TIFPSComp.OnUseVariable event
TPointerList An array of pointers

Constants

NameDescription
btArray An array
btChar a Char (1 byte)
btClass Compile time class type; In IFPS3 external classes are not of one defined type (They could be anything from an integer to a pointer)
btDouble A 8 byte float (double)
btEnum Compile time enumeration; This will be a btu32 when compiled
btExtended A 10 byte float (extended)
btPChar A PChar (internally the same as a string)
btPointer A pointer
btProcPtr Compile time procedural pointer (will be btu32 when compiled)
btRecord A record
btResourcePointer A resource pointer: Variable that can contain things from outside the script engine
btReturnAddress Executer internal type for return addresses, can not be used as a type
btS16 A 2 byte signed integer (smallint)
btS32 A 4 byte signed integer (Integer/Longint)
btS64 An 8 byte signed integer (int64)
btS8 A 1 byte signed integer (Shortint)
btSet Set
btSingle A 4 byte float (single)
btStaticArray Static array
btString A string
btU16 A 2 byte unsigned integer (word)
btU32 A 4 byte unsigned integer (cardinal/longword)
btU8 A 1 byte unsigned integer (byte)
btVariant A variant
btWideChar A widechar
btWideString A wide string
CM_A Script internal command: Assign command
cm_bn Script internal command: Boolean NOT
Cm_C Script internal command: Call
CM_CA Script internal command: Calculate Command
Cm_CG Script internal command: Conditional Goto
Cm_CNG Script internal command: Conditional NOT Goto
CM_CO Script internal command: Compare
Cm_cv Script internal command: Call Var
cm_fg Script internal command: Flag Goto
Cm_G Script internal command: Goto
cm_in Script internal command: Integer NOT
CM_P Script internal command: Push
CM_PO Script internal command: Pop
cm_poexh Script internal command: Pop Exception Handler
Cm_Pt Script internal command: Push Type
cm_puexh Script internal command: Push Exception Handler
CM_PV Script internal command: Push Var
Cm_R Script internal command: Ret
cm_sf Script internal command: Set Flag
cm_sp Script internal command: Set Pointer
Cm_ST Script internal command: Set Stack Type
cm_vm Script internal command: Var Minus
IFPSAddrNegativeStackStart Start of the negative stack
IFPSAddrStackStart Start of the positive stack
IFPSCurrentBuildNo The current build of the compiler and executer.
IFPSCurrentversion The current version of the script engine
IFPSLowBuildSupport The lowest supported build by the executer.
IFPSMainProcName The name of the main proc
IFPSMainProcNameOrg  
IFPSValidHeader The header of a compiled IFPS3 binary must start with this
MaxListSize Maximum number of items in a list

Author

Carlo Kok <ck@carlo-kok.com>