Index

Abstract, 78
Address, 162
Alias, 206
Ansistring, 32, 37
Array, 41, 195, 196
    Constructor, 45
    Dynamic, 42
    Of const, 196
    Static, 41
array, 58
Array constructor, 45
Asm, 188
Assembler, 188, 205, 240

block, 229
Boolean, 27

Case, 174
cdecl, 206
Char, 30
Class, 82, 91
Class helpers, 135
Classes, 82
CodePage, 32, 34
    Conversion, 34
COM, 58, 112
Comments, 12
Comp, 30
Const, 22
    String, 22
Constants, 20
    Ordinary, 20
    String, 18, 21, 37
    Typed, 21
Constructor, 74, 87, 159
CORBA, 58, 112
Currency, 30

Delphi
    Compatibility, 120
    Syntax, 120
    Type overloads, 121
Destructor, 74, 88
Directives
    Hint, 15
Dispatch, 95
DispatchStr, 95
Double, 30

else, 174, 175
except, 236, 238
Exception, 234
Exceptions, 234
    Catching, 234, 236
    Classes, 238
    Handling, 237, 238
    Raising, 234
export, 207
Expression, 185, 186
Expressions, 155
Extended, 30
Extended records, 130
External, 204
external, 64, 204

Fields, 47, 72
File, 51
finally, 237, 238
For, 177, 178
    downto, 177
    in, 178
    to, 177
Forward, 53, 203
Function, 190
Functions, 189
    Assembler, 205, 240
    External, 204
    Forward, 203
    Modifiers, 205
    Overloaded, 202

Generics, 114
    Overloads, 121
    Type Restrictions, 119

Hint directives, 15

Identifiers, 15
If, 175
index, 99, 204
Inherited, 90
inherited, 78, 102
inline, 207
interface, 106
Interfaces, 58, 59, 106
    COM, 112
    CORBA, 112
    Implementations, 108
interrupt, 207
iocheck, 208

Labels, 18
Libraries, 232
library, 232
local, 208

Message, 95
message, 95
Methods, 75, 89
    Abstract, 78
    Class, 91
    Message, 95
    Static, 76, 93
    Virtual, 77, 78, 90
Modifiers, 14, 205, 212
    Alias, 206
    cdecl, 206
    export, 207
    inline, 207
    interrupt, 207
    iocheck, 208
    local, 208
    noreturn, 208
    nostackframe, 208
    overload, 209
    pascal, 210
    public, 210
    register, 211
    safecall, 211
    saveregisters, 211
    softfloat, 211
    stdcall, 211
    varargs, 211

name, 204
noreturn, 208
nostackframe, 208
Numbers, 16
    Binary, 17
    Decimal, 17
    Hexadecimal, 17
    Octal, 17
    Real, 16

object, 71
Objective-Pascal, 145
Objective-Pascal Classes, 145
Objects, 71
Operators, 20, 38, 53, 155, 162, 163
    Arithmetic, 163, 218
    Assignment, 214
    Binary, 218
    Boolean, 164
    Comparison, 219
    Logical, 163
    Relational, 166
    Set, 165
    String, 164
    Unary, 163
operators, 213
otherwise, 174
overload, 209
overloading
    operators, 213
Override, 90
override, 78

Packed, 48, 72, 88
Parameters, 191
    Constant, 191, 194
    Open Array, 195, 196
    Out, 193
    Untypes, 191
    Value, 191
    Var, 99, 191, 192
pascal, 210
PChar, 34, 37
Pointer, 51
Private, 80, 84, 98
    strict, 84
private, 72
Procedural, 54
Procedure, 54, 189
Procedures, 189
program, 223
Properties, 68, 97
    Array, 100
    Indexed, 99
Property, 91, 97
Protected, 80, 84
Public, 80, 84
public, 72, 210
Published, 84, 98
PUnicodeChar, 37

Raise, 234
Rawbytestring, 36
Read, 98
Real, 30
Record, 47
    Constant, 66
Record helpers, 135
register, 211
reintroduce, 90
Repeat, 185
Reserved words, 13
    Delphi, 14
    Modifiers, 14
    Turbo Pascal, 13
Resourcestring, 22

safecall, 211
saveregisters, 211
Scope, 33, 44, 65, 71, 80, 83, 231
    block, 231
    Class, 231
    record, 231
    unit, 232
Self, 75, 91, 96
Set, 50
Shortstring, 32
Single, 30
softfloat, 211
Statements, 170
    Assembler, 188, 240
    Assignment, 170
    Case, 174
    Compound, 173
    Exception, 188
    For, 177, 178
    Goto, 172
    if, 175
    Loop, 177, 178, 185
    Procedure, 171
    Repeat, 185
    Simple, 170
    Structured, 173
    While, 185
    With, 186
Static class methods, 93
stdcall, 211
String, 18
    Ansistring, 32
    CodePage, 32
    Codepage, 34
    Constant, 37
    Multi-byte, 37
    RawByteString, 36
    ShortString, 32
    Single-byte string, 31
    UnicodeString, 37
    UTF8String, 36
    WideString, 37
Symbols, 11
Syntax diagrams, 9

Text, 51
then, 175
Thread Variables, 67
Threadvar, 67
Tokens, 11
    Comments, 12
    Identifiers, 15
    Numbers, 16
    Reserved words, 13
    Strings, 18
    Symbols, 11
try, 237, 238
Type, 24
    Compatibility, 27, 45, 61, 122, 160, 162, 192
    Generics, 114
    Helpers, 135
    Restrictions, 119
    Type overloads, 121
Typecast, 33, 34, 37, 160, 161
    Unaligned, 161
    Value, 160
    Variable, 160
Types, 24
    Ansistring, 32
    Array, 41, 42
    Base, 24
    Boolean, 27
    Char, 30
    Class, 82
    Class helpers, 135
    Constructor, 45
    Enumeration, 28
    Extended record, 130
    File, 51
    Forward declaration, 53
    Integer, 25
    Object, 71
    Ordinal, 25
    PChar, 34, 38
    Pointer, 38, 51
    Procedural, 54
    Rawbytestring, 36
    Real, 29
    Record, 47
    Record helpers, 135
    Reference counted, 32, 34, 36, 37, 42, 44, 112, 198
    Set, 50
    ShortString, 32
    String, 31
    Structured, 39
    Subrange, 29
    Type helpers, 135
    UnicodeString, 36, 37
    UTF8String, 36
    Variant, 57
    Widestring, 37

Unicodestring, 37
unit, 224, 232
uses, 223
UTF8String, 36

Var, 63
varargs, 211
Variable, 63
Variables, 63
    Initialized, 21, 65, 66
Variant, 57
Virtual, 74, 75, 77, 90, 95
Visibility, 71, 80, 106
    Private, 71, 84
    Protected, 84
    Public, 71, 84
    Published, 84
    Strict Private, 84
    Strict Protected, 84

While, 185
WideChar, 30
Widestring, 37
With, 186
Write, 98