Расширение простых типов

Расширения

type
  //record helper extends simple types;
  //NOTE: only one helper is active per
  //type, this hides SysUtils helpers
  TIntHelper = record helper for Integer
    function IsEven: Boolean;
  end;

function TIntHelper.IsEven: Boolean;
begin
  Result := Self mod 2 = 0;
end;

var
  N: Integer;
begin
  N := 42;

  WriteLn('isEven is ', N.IsEven);
  //isEven is TRUE

  WriteLn('isEven is ', 7.IsEven);
  //isEven is FALSE
end.