codetools: test parsing Delphi class operators

git-svn-id: trunk@53670 -
This commit is contained in:
mattias 2016-12-13 13:00:41 +00:00
parent 025eab7ffe
commit 8170f4738e

View File

@ -103,8 +103,38 @@ begin
StartProgram;
Add([
'type',
' TFlag = (flag1);',
' TMyRecord = record',
' class operator Implicit(t: TMyRecord): TMyRecord;',
' class operator Explicit(t: TMyRecord): TMyRecord;',
' class operator Negative(t: TMyRecord): TMyRecord;',
' class operator Positive(t: TMyRecord): TMyRecord;',
' class operator Inc(t: TMyRecord): TMyRecord;',
' class operator Dec(t: TMyRecord): TMyRecord;',
' class operator LogicalNot(t: TMyRecord): TMyRecord;',
' class operator Trunc(t: TMyRecord): TMyRecord;',
' class operator Round(t: TMyRecord): TMyRecord;',
' class operator In(f: TFlag; t: TMyRecord): boolean;',
' class operator Equal(t1, t2: TMyRecord): boolean;',
' class operator NotEqual(t1, t2: TMyRecord): boolean;',
' class operator GreaterThan(t1, t2: TMyRecord): boolean;',
' class operator GreaterThanOrEqual(t1, t2: TMyRecord): boolean;',
' class operator LessThan(t1, t2: TMyRecord): boolean;',
' class operator LessThanOrEqual(t1, t2: TMyRecord): boolean;',
' class operator Add(t1, t2: TMyRecord): TMyRecord;',
' class operator Subtract(t1, t2: TMyRecord): TMyRecord;',
' class operator Multiply(t1, t2: TMyRecord): TMyRecord;',
' class operator Divide(t1, t2: TMyRecord): TMyRecord;',
' class operator IntDivide(t1, t2: TMyRecord): TMyRecord;',
' class operator Modulus(t1, t2: TMyRecord): TMyRecord;',
' class operator LeftShift(t1, t2: TMyRecord): TMyRecord;',
' class operator RightShift(t1, t2: TMyRecord): TMyRecord;',
' class operator LogicalAnd(b: boolean; t: TMyRecord): TMyRecord;',
' class operator LogicalOr(b: boolean; t: TMyRecord): TMyRecord;',
' class operator LogicalXor(b: boolean; t: TMyRecord): TMyRecord;',
' class operator BitwiseAnd(t1, t2: TMyRecord): TMyRecord;',
' class operator BitwiseOr(t1, t2: TMyRecord): TMyRecord;',
' class operator BitwiseXor(t1, t2: TMyRecord): TMyRecord;',
' end;',
'',
'class operator TMyRecord.Implicit(t: TMyRecord): TMyRecord;',