Hi *,
I have some generic class:
generic T2DNumericArray<T> = object(specialize T2DArray<T>)
public
class function Truncate(Value: double): T; inline;
...In class function Truncate I want check if supplied Value is in range of T. T will be always ordinal type (byte, integer) ... (I know this, but compiler does not of course)
Can I use in :
class function T2DNumericArray.Truncate(Value: double): T;
begin
if Value > High(T) then
Result := High(T)
else if Value < Low(T) then
Result := Low(T)
else
Result := Value;
end;I understand, that from compiler POV T can be any type, so High() and Low() can be invalid, but I wonder if there is any way how to solve this.
Thanks
-Laco.
