|
@@ -717,7 +717,10 @@ type
|
|
|
Procedure SetGenericTemplates(AList : TFPList);
|
|
|
end;
|
|
|
|
|
|
- TPasGenericTemplateType = Class(TPasType);
|
|
|
+ TPasGenericTemplateType = Class(TPasType)
|
|
|
+ Public
|
|
|
+ TypeConstraint : String;
|
|
|
+ end;
|
|
|
|
|
|
TPasObjKind = (
|
|
|
okObject, okClass, okInterface, okGeneric,
|
|
@@ -1063,7 +1066,7 @@ type
|
|
|
otGreaterThan, otAssign,otNotEqual,otLessEqualThan,otGreaterEqualThan,otPower,
|
|
|
otSymmetricalDifference, otInc, otDec, otMod, otNegative, otPositive, otBitWiseOr, otDiv,
|
|
|
otLeftShift, otLogicalOr, otBitwiseAnd, otbitwiseXor,otLogicalAnd,otLogicalNot,otLogicalXor,
|
|
|
- otRightShift,otEnumerator);
|
|
|
+ otRightShift,otEnumerator, otIn);
|
|
|
TOperatorTypes = set of TOperatorType;
|
|
|
|
|
|
TPasOperator = class(TPasFunction)
|
|
@@ -1597,13 +1600,13 @@ const
|
|
|
'>',':=','<>','<=','>=','**',
|
|
|
'><','Inc','Dec','mod','-','+','Or','div',
|
|
|
'shl','or','and','xor','and','not','xor',
|
|
|
- 'shr','enumerator');
|
|
|
+ 'shr','enumerator','in');
|
|
|
OperatorNames : Array[TOperatorType] of string
|
|
|
= ('','implicit','explicit','multiply','add','subtract','divide','lessthan','equal',
|
|
|
'greaterthan','assign','notequal','lessthanorequal','greaterthanorequal','power',
|
|
|
'symmetricaldifference','inc','dec','modulus','negative','positive','bitwiseor','intdivide',
|
|
|
'leftshift','logicalor','bitwiseand','bitwisexor','logicaland','logicalnot','logicalxor',
|
|
|
- 'rightshift','enumerator');
|
|
|
+ 'rightshift','enumerator','in');
|
|
|
|
|
|
AssignKindNames : Array[TAssignKind] of string = (':=','+=','-=','*=','/=' );
|
|
|
|