block, 211
Boolean, 25
Case, 159
cdecl, 190
Char, 29
Class, 75, 83
Class helpers, 120
Classes, 75
CodePage, 31, 33
Conversion, 33
COM, 54, 104
Comments, 12
Comp, 28
Const, 22
String, 22
Constants, 20
Ordinary, 20
String, 18, 21, 35
Typed, 21
Constructor, 69, 80, 144
CORBA, 54, 104
Currency, 28
Destructor, 69, 81
Directives
Hint, 16
Dispatch, 88
DispatchStr, 88
Double, 28
else, 159, 160
except, 218, 220
Exception, 216
Exceptions, 216
Catching, 216, 218
Classes, 220
Handling, 219, 220
Raising, 216
export, 190
Expression, 170, 171
Expressions, 140
Extended, 28
Extended records, 115
External, 187
external, 59, 188
Fields, 44, 67
File, 47
finally, 219, 220
For, 162, 163
downto, 162
in, 163
to, 162
Forward, 50, 186
Function, 175
Functions, 174
Assembler, 188, 222
External, 187
Forward, 186
Modifiers, 188
Overloaded, 186
Generics, 106
Hint directives, 16
Identifiers, 15
If, 160
index, 92, 188
Inherited, 83
inherited, 72, 95
inline, 191
interface, 99
Interfaces, 54, 55, 99
COM, 104
CORBA, 104
Implementations, 101
interrupt, 191
iocheck, 191
Labels, 18
Libraries, 214
library, 214
local, 191
Message, 88
message, 88
Methods, 70, 82
Abstract, 73
Class, 83
Message, 87
Static, 71, 86
Virtual, 72, 73, 82
Modifiers, 14, 188, 195
Alias, 189
cdecl, 190
export, 190
inline, 191
interrupt, 191
iocheck, 191
local, 191
noreturn, 192
nostackframe, 192
overload, 192
pascal, 193
public, 193
register, 194
safecall, 194
saveregisters, 195
softfloat, 195
stdcall, 195
varargs, 195
name, 188
noreturn, 192
nostackframe, 192
Numbers, 17
Binary, 17
Decimal, 17
Hexadecimal, 17
Octal, 17
Real, 17
object, 66
Objective-Pascal, 130
Objective-Pascal Classes, 130
Objects, 66
Operators, 20, 36, 49, 140, 147, 148
Arithmetic, 148, 201
Assignment, 197
Binary, 201
Boolean, 149
Comparison, 202
Logical, 148
Relational, 151
Set, 150
String, 149
Unary, 148
operators, 196
otherwise, 159
overload, 192
overloading
operators, 196
Override, 83
override, 72
Packed, 44, 67, 81
Parameters, 176
Constant, 176, 179
Open Array, 180, 181
Out, 178
Untypes, 176
Value, 176
Var, 92, 176, 177
pascal, 193
PChar, 32, 35
Pointer, 48
Private, 74, 77, 91
strict, 77
private, 67
Procedural, 51
Procedure, 51, 174
Procedures, 174
program, 205
Properties, 62, 90
Array, 93
Indexed, 92
Property, 84, 90
Protected, 74, 77
Public, 74, 77
public, 67, 193
Published, 77, 91
PUnicodeChar, 35
Raise, 216
Rawbytestring, 34
Read, 91
Real, 28
Record, 44
Constant, 60
Record helpers, 120
register, 194
reintroduce, 83
Repeat, 170
Reserved words, 13
Delphi, 14
Free Pascal, 14
Modifiers, 14
Turbo Pascal, 13
Resourcestring, 22
safecall, 194
saveregisters, 195
Scope, 32, 41, 60, 66, 74, 76, 213
block, 213
Class, 213
record, 213
unit, 214
Self, 70, 84, 89
Set, 47
Shortstring, 30
Single, 28
softfloat, 195
Statements, 155
Assembler, 173, 222
Assignment, 155
Case, 159
Compound, 158
Exception, 173
For, 162, 163
Goto, 157
if, 160
Loop, 162, 163, 170
Procedure, 156
Repeat, 170
Simple, 155
Structured, 158
While, 170
With, 171
Static class methods, 86
stdcall, 195
String, 18
Ansistring, 31
CodePage, 31
Codepage, 33
Constant, 35
Multi-byte, 34
RawByteString, 34
ShortString, 30
Single-byte string, 29
UnicodeString, 35
UTF8String, 34
WideString, 35
Symbols, 11
Syntax diagrams, 9
Text, 47
then, 160
Thread Variables, 62
Threadvar, 62
Tokens, 11
Comments, 12
Identifiers, 15
Numbers, 17
Reserved words, 13
Strings, 18
Symbols, 11
try, 219, 220
Type, 23
Helpers, 120
Typecast, 31, 32, 35, 145, 146
Unaligned, 146
Value, 145
Variable, 145
Types, 23
Ansistring, 31
Array, 38–40
Base, 23
Boolean, 25
Char, 29
Class, 75
Class helpers, 120
Constructor, 42
Enumeration, 26
Extended record, 115
File, 47
Forward declaration, 50
Integer, 24
Object, 66
Ordinal, 24
PChar, 32, 36
Pointer, 36, 48
Procedural, 51
Rawbytestring, 34
Real, 28
Record, 44
Record helpers, 120
Reference counted, 31, 33–35, 40, 41, 104, 183
Set, 47
ShortString, 30
String, 29
Structured, 37
Subrange, 28
Type helpers, 120
UnicodeString, 34, 35
UTF8String, 34
Variant, 54
Widestring, 35
Unicodestring, 35
unit, 206, 214
uses, 205
UTF8String, 34
Var, 58
varargs, 195
Variable, 58
Variables, 58
Initialized, 21, 60, 61
Variant, 54
Virtual, 69, 72, 82, 88
Visibility, 66, 74, 99
Private, 66, 77
Protected, 77
Public, 66, 77
Published, 77
Strict Private, 77
Strict Protected, 77
While, 170
WideChar, 29
Widestring, 35
With, 171
Write, 91