Структуры (записи)

type
  TSetting = record
    //type field
    class var Mode: Integer;
    //type method: static in records
    class procedure SetNextMode; static;
  end;

class procedure TSetting.SetNextMode;
begin
  Mode := (Mode + 1mod 3;
end;

begin
  TSetting.Mode := 3;
  TSetting.SetNextMode;
  //TSetting.Mode is 1

  WriteLn('mode is 'TSetting.Mode);
end.