syshelpo.inc 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. Class Function TORDINALHELPER.Parse(const AString: string): TORDINALTYPE; inline; static;
  2. var
  3. Error: Integer;
  4. begin
  5. Val(AString,Result,Error);
  6. if Error<>0 then
  7. raise EConvertError.CreateFmt(SInvalidInteger,[AString]);
  8. end;
  9. Class Function TORDINALHELPER.Size: Integer; inline; static;
  10. begin
  11. Result:=SizeOf(TORDINALTYPE);
  12. end;
  13. Class Function TORDINALHELPER.ToString(const AValue: TORDINALTYPE): string; overload; inline; static;
  14. begin
  15. Str(AValue,Result);
  16. end;
  17. Class Function TORDINALHELPER.TryParse(const AString: string; out AValue: TORDINALTYPE): Boolean; inline; static;
  18. Var
  19. C : Integer;
  20. begin
  21. Val(AString,AValue,C);
  22. Result:=(C=0);
  23. end;
  24. Function TORDINALHELPER.ToBoolean: Boolean; inline;
  25. begin
  26. Result:=(Self<>0);
  27. end;
  28. Function TORDINALHELPER.ToDouble: Double; inline;
  29. begin
  30. Result:=Self;
  31. end;
  32. Function TORDINALHELPER.ToExtended: Extended; inline;
  33. begin
  34. Result:=Self;
  35. end;
  36. Function TORDINALHELPER.ToBinString: string; inline;
  37. begin
  38. Result:=BinStr(Self,SizeOf(TORDINALTYPE)*8);
  39. end;
  40. Function TORDINALHELPER.ToHexString(const AMinDigits: Integer): string;
  41. overload; inline;
  42. begin
  43. Result:=IntToHex(Self,AMinDigits);
  44. end;
  45. Function TORDINALHELPER.ToHexString: string; overload; inline;
  46. begin
  47. Result:=IntToHex(Self);
  48. end;
  49. Function TORDINALHELPER.ToSingle: Single; inline;
  50. begin
  51. Result:=Self;
  52. end;
  53. Function TORDINALHELPER.ToString: string; overload; inline;
  54. begin
  55. Str(Self,Result);
  56. end;
  57. Function TORDINALHELPER.SetBit(const index: TORDINALBITINDEX) : TORDINALTYPE; inline;
  58. begin
  59. Self := Self or (TORDINALTYPE(1) shl index);
  60. Result:=Self;
  61. end;
  62. Function TORDINALHELPER.ClearBit(const index: TORDINALBITINDEX) : TORDINALTYPE; inline;
  63. begin
  64. Self:=Self and not TORDINALTYPE((TORDINALTYPE(1) shl index));
  65. Result:=Self;
  66. end;
  67. Function TORDINALHELPER.ToggleBit(const index: TORDINALBITINDEX) : TORDINALTYPE; inline;
  68. begin
  69. Self := Self xor TORDINALTYPE((TORDINALTYPE(1) shl index));
  70. Result:=Self;
  71. end;
  72. Function TORDINALHELPER.TestBit(const Index: TORDINALBITINDEX):Boolean; inline;
  73. begin
  74. Result := (Self and TORDINALTYPE((TORDINALTYPE(1) shl index)))<>0;
  75. end;