Added TBigInt.ToString for debugging
This commit is contained in:
parent
9c951073d9
commit
2ca960f19c
17
UBigInt.pas
17
UBigInt.pas
|
@ -78,6 +78,8 @@ type
|
||||||
class property Zero: TBigInt read GetZero;
|
class property Zero: TBigInt read GetZero;
|
||||||
function CompareTo(constref AOther: TBigInt): Integer;
|
function CompareTo(constref AOther: TBigInt): Integer;
|
||||||
function TryToInt64(out AOutput: Int64): Boolean;
|
function TryToInt64(out AOutput: Int64): Boolean;
|
||||||
|
// TODO: ToString is currently for debug output only.
|
||||||
|
function ToString: string;
|
||||||
class function FromInt64(const AValue: Int64): TBigInt; static;
|
class function FromInt64(const AValue: Int64): TBigInt; static;
|
||||||
class function FromHexadecimalString(const AValue: string): TBigInt; static;
|
class function FromHexadecimalString(const AValue: string): TBigInt; static;
|
||||||
class function FromBinaryString(const AValue: string): TBigInt; static;
|
class function FromBinaryString(const AValue: string): TBigInt; static;
|
||||||
|
@ -498,6 +500,21 @@ begin
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TBigInt.ToString: string;
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
begin
|
||||||
|
if FIsNegative then
|
||||||
|
Result := '-'
|
||||||
|
else
|
||||||
|
Result := '';
|
||||||
|
for i := 0 to Length(FDigits) - 2 do
|
||||||
|
Result := Result + '(' + IntToStr(FDigits[i]) + ' + 2^32 * ';
|
||||||
|
Result := Result + IntToStr(FDigits[Length(FDigits) - 1]);
|
||||||
|
for i := 0 to Length(FDigits) - 2 do
|
||||||
|
Result := Result + ')';
|
||||||
|
end;
|
||||||
|
|
||||||
class function TBigInt.FromInt64(const AValue: Int64): TBigInt;
|
class function TBigInt.FromInt64(const AValue: Int64): TBigInt;
|
||||||
var
|
var
|
||||||
absVal: Int64;
|
absVal: Int64;
|
||||||
|
|
Loading…
Reference in New Issue