Hi, by using compiler intrinsics, is it possible to check if a generic type parameter is an unsigned integer? I have the following code:
function TChecker<T>.CheckIsUnsigned: Boolean;
begin
if GetTypeKind(T) = tkInteger then
begin
if SizeOf(T) = 4 then
begin
// TODO: Check if it is an unsigned 32-bit integer
Result := True;
end else if SizeOf(T) = 2 then
begin
// TODO: Check if it is an unsigned 16-bit integer
Result := True;
end else
begin
// TODO: Check if it is an unsigned 8-bit integer
Result := True;
end;
end else
begin
Result := False;
end;
end;
The code should return True only if the 'T' generic type parameter is an unsigned integer. I remember that +Stefan Glienke posted here some code that can do this trick, however, I am not able to find that now.

Thanks!
Shared publiclyView activity