Duke's Big Numbers 1.0
C++ and Blueprint libraries for performing math, analysis, and formatting with really large numbers (>10e308).
Loading...
Searching...
No Matches
BigIntegerLibrary.h
1// Copyright (C)2023 Smiling Cat Entertainment, LTD. All Rights Reserved.
2
3#pragma once
4
5#include "Inline.h"
6#include "CoreMinimal.h"
7#include "Kismet/BlueprintFunctionLibrary.h"
8#include "BigInteger.h"
9#include "BigIntegerLibrary.generated.h"
10
14UCLASS()
15class DUKESBIGNUMBERS_API UBigIntegerLibrary : public UBlueprintFunctionLibrary
16{
17 GENERATED_BODY()
18
19public:
25 UFUNCTION(BlueprintPure, meta = (DisplayName = "0", CompactNodeTitle = "0"), Category = "Math|BigInteger")
26 static FBigInteger Zero();
27
33 UFUNCTION(BlueprintPure, meta = (DisplayName = "1", CompactNodeTitle = "1"), Category = "Math|BigInteger")
34 static FBigInteger One();
35
41 UFUNCTION(BlueprintPure, meta = (DisplayName = "-1", CompactNodeTitle = "-1"), Category = "Math|BigInteger")
42 static FBigInteger MinusOne();
43
50 UFUNCTION(BlueprintPure, meta = (DisplayName = "To BigInteger [Boolean]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
51 static FBigInteger Conv_BoolToBigInteger(bool In);
52
59 UFUNCTION(BlueprintPure, meta = (DisplayName = "To BigInteger [Byte]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
60 static FBigInteger Conv_ByteToBigInteger(uint8 In);
61
68 UFUNCTION(BlueprintPure, meta = (DisplayName = "To BigInteger [Integer]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
69 static FBigInteger Conv_IntToBigInteger(int32 In);
70
77 UFUNCTION(BlueprintPure, meta = (DisplayName = "To BigInteger [Integer64]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
78 static FBigInteger Conv_Int64ToBigInteger(int64 In);
79
86 UFUNCTION(BlueprintPure, meta = (DisplayName = "To BigInteger [Float]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
87 static FBigInteger Conv_FloatToBigInteger(float In);
88
95 UFUNCTION(BlueprintPure, meta = (DisplayName = "To BigInteger [Double]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
96 static FBigInteger Conv_DoubleToBigInteger(double In);
97
106 UFUNCTION(BlueprintPure, meta = (DisplayName = "To BigInteger [Array of Byte]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
107 static FBigInteger Conv_ByteArrayToBigInteger(const TArray<uint8>& In);
108
116 UFUNCTION(BlueprintPure, Category = "Math|BigInteger", meta = (Keywords = "construct build", NativeMakeFunc))
117 static FBigInteger Make_BigInteger(const TArray<uint8>& Magnitude, bool IsNegative);
118
126 UFUNCTION(BlueprintPure, meta = (DisplayName = "To Boolean [BigInteger]", CompactNodeTitle = "->", BlueprintAutocast, ScriptOperator = "bool"), Category = "Math|Conversions")
127 static bool Conv_BigIntegerToBool(const FBigInteger& In);
128
135 UFUNCTION(BlueprintPure, meta = (DisplayName = "To Byte [BigInteger]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
136 static uint8 Conv_BigIntegerToByte(const FBigInteger& In);
137
144 UFUNCTION(BlueprintPure, meta = (DisplayName = "To Integer [BigInteger]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
145 static int32 Conv_BigIntegerToInt(const FBigInteger& In);
146
153 UFUNCTION(BlueprintPure, meta = (DisplayName = "To Integer64 [BigInteger]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
154 static int64 Conv_BigIntegerToInt64(const FBigInteger& In);
155
162 UFUNCTION(BlueprintPure, meta = (DisplayName = "To Float [BigInteger]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
163 static float Conv_BigIntegerToFloat(const FBigInteger& In);
164
171 UFUNCTION(BlueprintPure, meta = (DisplayName = "To Double [BigInteger]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
172 static double Conv_BigIntegerToDouble(const FBigInteger& In);
173
180 UFUNCTION(BlueprintPure, meta = (DisplayName = "To Byte Array [BigInteger]", CompactNodeTitle = "->", BlueprintAutocast), Category = "Math|Conversions")
181 static TArray<uint8> Conv_BigIntegerToByteArray(const FBigInteger& In);
182
190 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger + BigInteger", CompactNodeTitle = "+", ScriptMethod = "Add", ScriptOperator = "+;+=", Keywords = "+ add plus", CommutativeAssociativeBinaryOperator = "true"), Category = "Math|BigInteger")
191 static FBigInteger Add_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
192
200 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger - BigInteger", CompactNodeTitle = "-", ScriptMethod = "SubtractBigInteger", ScriptOperator = "-;-=", Keywords = "- Subtract"), Category = "Math|BigInteger")
201 static FBigInteger Subtract_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
202
210 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger * BigInteger", CompactNodeTitle = "*", ScriptMethod = "MultiplyBigInteger", ScriptOperator = "*;*=", Keywords = "* Multiply"), Category = "Math|BigInteger")
211 static FBigInteger Multiply_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
212
220 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger / BigInteger", CompactNodeTitle = "/", ScriptMethod = "DivideBigInteger", ScriptOperator = "/;/=", Keywords = "/ Divide"), Category = "Math|BigInteger")
221 static FBigInteger Divide_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
222
230 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger % BigInteger", CompactNodeTitle = "%", ScriptMethod = "RemainderBigInteger", ScriptOperator = "%;%=", Keywords = "% Remainder"), Category = "Math|BigInteger")
231 static FBigInteger Remainder_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
232
241 UFUNCTION(BlueprintPure, meta = (DisplayName = "DivRem[BigInteger, BigInteger]", CompactNodeTitle = "DivRem", ScriptMethod = "DivRemBigInteger", Keywords = "Divide Remainder DivRem"), Category = "Math|BigInteger")
242 static void DivRem_BigIntegerBigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B, FBigInteger& Quotient, FBigInteger& Remainder);
243
251 UFUNCTION(BlueprintPure, meta = (DisplayName = "Bitwise AND", CompactNodeTitle = "&", ScriptMethod = "And", ScriptOperator = "&;&=", Keywords = "& and"), Category = "Math|BigInteger")
252 static FBigInteger And_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
253
261 UFUNCTION(BlueprintPure, meta = (DisplayName = "Bitwise OR", CompactNodeTitle = "|", ScriptMethod = "Or", ScriptOperator = "|;|=", Keywords = "| or"), Category = "Math|BigInteger")
262 static FBigInteger Or_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
263
271 UFUNCTION(BlueprintPure, meta = (DisplayName = "Bitwise XOR", CompactNodeTitle = "^", ScriptMethod = "Xor", ScriptOperator = "^;^=", Keywords = "^ xor"), Category = "Math|BigInteger")
272 static FBigInteger Xor_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
273
280 UFUNCTION(BlueprintPure, meta = (DisplayName = "Bitwise NOT", CompactNodeTitle = "~", ScriptMethod = "Inv", Keywords = "~ inv invert"), Category = "Math|BigInteger")
281 static FBigInteger Invert_BigInteger(const FBigInteger& In);
282
290 UFUNCTION(BlueprintPure, meta = (DisplayName = "Logical NOT", CompactNodeTitle = "!", ScriptMethod = "Not", Keywords = "! not"), Category = "Math|BigInteger")
291 static bool Not_BigInteger(const FBigInteger& In);
292
299 UFUNCTION(BlueprintPure, meta = (DisplayName = "Increment", CompactNodeTitle = "++", ScriptMethod = "Increment", Keywords = "++ increment"), Category = "Math|BigInteger")
300 static FBigInteger Increment_BigInteger(UPARAM(ref) FBigInteger& In);
301
308 UFUNCTION(BlueprintPure, meta = (DisplayName = "Decrement", CompactNodeTitle = "--", ScriptMethod = "Decrement", Keywords = "-- decrement"), Category = "Math|BigInteger")
309 static FBigInteger Decrement_BigInteger(UPARAM(ref) FBigInteger& In);
310
318 UFUNCTION(BlueprintPure, meta = (DisplayName = "Clear Bit"), Category = "Math|BigInteger")
319 static FBigInteger ClearBit_BigIntegerInt(const FBigInteger& Value, int32 Bit);
320
328 UFUNCTION(BlueprintPure, meta = (DisplayName = "Set Bit"), Category = "Math|BigInteger")
329 static FBigInteger SetBit_BigIntegerInt(const FBigInteger& Value, int32 Bit);
330
338 UFUNCTION(BlueprintPure, meta = (DisplayName = "Toggle Bit"), Category = "Math|BigInteger")
339 static FBigInteger ToggleBit_BigIntegerInt(const FBigInteger& Value, int32 Bit);
340
341
348 UFUNCTION(BlueprintPure, meta = (DisplayName = "Negate [BigInteger]", CompactNodeTitle = "-", ScriptMethod = "Negated", ScriptOperator = "neg"), Category = "Math|BigInteger")
349 static FBigInteger Neg_BigInteger(const FBigInteger& In);
350
359 UFUNCTION(BlueprintPure, meta = (DisplayName = "Bitwise Shift Left", CompactNodeTitle = "<<", ScriptMethod = "ShiftLeft", ScriptOperator = "<<", Keywords = "<< shl shift left"), Category = "Math|BigInteger")
360 static FBigInteger ShiftLeft_BigIntegerInt(const FBigInteger& In, int32 Shift);
361
370 UFUNCTION(BlueprintPure, meta = (DisplayName = "Bitwise Shift Right", CompactNodeTitle = ">>", ScriptMethod = "ShiftRight", ScriptOperator = ">>", Keywords = ">> shr shift right"), Category = "Math|BigInteger")
371 static FBigInteger ShiftRight_BigIntegerInt(const FBigInteger& In, int32 Shift);
372
380 UFUNCTION(BlueprintPure, meta = (DisplayName = "SetSign [BigInteger]", CompactNodeTitle = "SetSign"), Category = "Math|BigInteger")
381 static FBigInteger SetSign_BigIntegerBool(const FBigInteger& In, bool IsNegative);
382
389 UFUNCTION(BlueprintPure, meta = (DisplayName = "Absolute [BigInteger]", CompactNodeTitle = "ABS"), Category = "Math|BigInteger")
390 static FBigInteger Abs_BigInteger(const FBigInteger& In);
391
398 UFUNCTION(BlueprintPure, meta = (DisplayName = "Negative Absolute [BigInteger]", CompactNodeTitle = "NABS"), Category = "Math|BigInteger")
399 static FBigInteger Nabs_BigInteger(const FBigInteger& In);
400
408 UFUNCTION(BlueprintPure, meta = (DisplayName = "CopySign [BigInteger]", CompactNodeTitle = "CopySign"), Category = "Math|BigInteger")
409 static FBigInteger CopySign_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
410
418 UFUNCTION(BlueprintPure, meta = (DisplayName = "Max [BigInteger]", CompactNodeTitle = "MAX", CommutativeAssociativeBinaryOperator = "true"), Category = "Math|BigInteger")
419 static FBigInteger Max_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
420
428 UFUNCTION(BlueprintPure, meta = (DisplayName = "Min [BigInteger]", CompactNodeTitle = "MIN", CommutativeAssociativeBinaryOperator = "true"), Category = "Math|BigInteger")
429 static FBigInteger Min_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
430
438 UFUNCTION(BlueprintPure, meta = (DisplayName = "MaxMagnitude [BigInteger]", CompactNodeTitle = "MAXMag", CommutativeAssociativeBinaryOperator = "true"), Category = "Math|BigInteger")
439 static FBigInteger MaxMag_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
440
448 UFUNCTION(BlueprintPure, meta = (DisplayName = "MinMagnitude [BigInteger]", CompactNodeTitle = "MINMag", CommutativeAssociativeBinaryOperator = "true"), Category = "Math|BigInteger")
449 static FBigInteger MinMag_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
450
459 UFUNCTION(BlueprintPure, meta = (CompactNodeTitle = "Select"), Category = "Math|BigInteger")
460 static FBigInteger Select_BigInteger(const FBigInteger& WhenTrue, const FBigInteger& WhenFalse, bool Condition);
461
470 UFUNCTION(BlueprintPure, meta = (DisplayName = "Clamp [BigInteger]", CompactNodeTitle = "CLAMP"), Category = "Math|BigInteger")
471 static FBigInteger Clamp_BigInteger(const FBigInteger& Value, const FBigInteger& Min, const FBigInteger& Max);
472
480 UFUNCTION(BlueprintPure, meta = (DisplayName = "CountPrecisionBits [BigInteger]", CompactNodeTitle = "PREC"), Category = "Math|BigInteger")
481 static int32 CountPrecisionBits_BigInteger(const FBigInteger& Value);
482
490 UFUNCTION(BlueprintPure, meta = (DisplayName = "CountLeadingZeros [BigInteger]", CompactNodeTitle = "NLZ"), Category = "Math|BigInteger")
491 static int32 CountLeadingZeros_BigInteger(const FBigInteger& Value);
492
499 UFUNCTION(BlueprintPure, meta = (DisplayName = "CountTrailingZeros [BigInteger]", CompactNodeTitle = "NTZ"), Category = "Math|BigInteger")
500 static int32 CountTrailingZeros_BigInteger(const FBigInteger& Value);
501
508 UFUNCTION(BlueprintPure, meta = (DisplayName = "CountBits [BigInteger]", CompactNodeTitle = "POP"), Category = "Math|BigInteger")
509 static int32 CountBits_BigInteger(const FBigInteger& Value);
510
518 UFUNCTION(BlueprintPure, meta = (DisplayName = "Get Word Length [BigInteger]"), Category = "Math|BigInteger")
519 static int32 GetWordLength_BigInteger(const FBigInteger& Value);
520
527 UFUNCTION(BlueprintPure, meta = (DisplayName = "Get Signed Bit Length [BigInteger]"), Category = "Math|BigInteger")
528 static int32 GetSignedBitLength_BigInteger(const FBigInteger& Value);
529
536 UFUNCTION(BlueprintPure, meta = (DisplayName = "Get Signed Byte Length [BigInteger]"), Category = "Math|BigInteger")
537 static int32 GetSignedByteLength_BigInteger(const FBigInteger& Value);
538
545 UFUNCTION(BlueprintPure, meta = (DisplayName = "Get Signed Word Length [BigInteger]"), Category = "Math|BigInteger")
546 static int32 GetSignedWordLength_BigInteger(const FBigInteger& Value);
547
554 UFUNCTION(BlueprintPure, meta = (DisplayName = "Get Sign [BigInteger]", CompactNodeTitle = "Sign"), Category = "Math|BigInteger")
555 static int32 GetSign_BigInteger(const FBigInteger& Value);
556
564 UFUNCTION(BlueprintPure, meta = (DisplayName = "GetBit [BigInteger]", CompactNodeTitle = "Bit"), Category = "Math|BigInteger")
565 static int32 GetBit_BigInteger(const FBigInteger& Value, int32 Position);
566
575 UFUNCTION(BlueprintPure, meta = (DisplayName = "Compare [Integer<=>BigInteger]", CompactNodeTitle = "<=>"), Category = "Math|BigInteger")
576 static int32 Compare_IntBigInteger(int32 A, const FBigInteger& B);
577
586 UFUNCTION(BlueprintPure, meta = (DisplayName = "Compare [Integer64<=>BigInteger]", CompactNodeTitle = "<=>"), Category = "Math|BigInteger")
587 static int32 Compare_Int64BigInteger(int64 A, const FBigInteger& B);
588
597 UFUNCTION(BlueprintPure, meta = (DisplayName = "Compare [BigInteger<=>Integer]", CompactNodeTitle = "<=>"), Category = "Math|BigInteger")
598 static int32 Compare_BigIntegerInt(const FBigInteger& A, int32 B);
599
608 UFUNCTION(BlueprintPure, meta = (DisplayName = "Compare [BigInteger<=>Integer64]", CompactNodeTitle = "<=>"), Category = "Math|BigInteger")
609 static int32 Compare_BigIntegerInt64(const FBigInteger& A, int64 B);
610
619 UFUNCTION(BlueprintPure, meta = (DisplayName = "Compare [BigInteger<=>BigInteger]", CompactNodeTitle = "<=>"), Category = "Math|BigInteger")
620 static int32 Compare_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
621
630 UFUNCTION(BlueprintPure, meta = (DisplayName = "Compare Magnitude [BigInteger<=>BigInteger]", CompactNodeTitle = "<=>\nMag"), Category = "Math|BigInteger")
631 static int32 CompareMagnitude_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
632
640 UFUNCTION(BlueprintCallable, meta = (DisplayName = "Branched Compare [Integer<=>BigInteger]", CompactNodeTitle = "<=>", ExpandEnumAsExecs = "ReturnValue"), Category = "Math|BigInteger")
641 static ECompareResult CompareExec_IntegerBigInteger(int32 A, const FBigInteger& B);
642
650 UFUNCTION(BlueprintCallable, meta = (DisplayName = "Branched Compare [Integer64<=>BigInteger]", CompactNodeTitle = "<=>", ExpandEnumAsExecs = "ReturnValue"), Category = "Math|BigInteger")
651 static ECompareResult CompareExec_Integer64BigInteger(int64 A, const FBigInteger& B);
652
660 UFUNCTION(BlueprintCallable, meta = (DisplayName = "Branched Compare [BigInteger<=>Integer]", CompactNodeTitle = "<=>", ExpandEnumAsExecs = "ReturnValue"), Category = "Math|BigInteger")
661 static ECompareResult CompareExec_BigIntegerInteger(const FBigInteger& A, int32 B);
662
670 UFUNCTION(BlueprintCallable, meta = (DisplayName = "Branched Compare [BigInteger<=>Integer64]", CompactNodeTitle = "<=>", ExpandEnumAsExecs = "ReturnValue"), Category = "Math|BigInteger")
671 static ECompareResult CompareExec_BigIntegerInteger64(const FBigInteger& A, int64 B);
672
680 UFUNCTION(BlueprintCallable, meta = (DisplayName = "Branched Compare [BigInteger<=>BigInteger]", CompactNodeTitle = "<=>", ExpandEnumAsExecs = "ReturnValue"), Category = "Math|BigInteger")
681 static ECompareResult CompareExec_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
682
690 UFUNCTION(BlueprintCallable, meta = (DisplayName = "Branched Compare Magnitude [BigInteger<=>BigInteger]", CompactNodeTitle = "<=>\nMag", ExpandEnumAsExecs = "ReturnValue"), Category = "Math|BigInteger")
691 static ECompareResult CompareExecMagnitude_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
692
700 UFUNCTION(BlueprintPure, meta = (DisplayName = "Pow [Integer, Integer]", CompactNodeTitle = "POW", Keywords = "pow"), Category = "Math|BigInteger")
701 static FBigInteger Pow_IntInt(int32 Base, int32 Exponent);
702
710 UFUNCTION(BlueprintPure, meta = (DisplayName = "Pow [BigInteger, Integer]", CompactNodeTitle = "POW", Keywords = "pow"), Category = "Math|BigInteger")
711 static FBigInteger Pow_BigIntegerInt(const FBigInteger& Base, int32 Exponent);
712
720 UFUNCTION(BlueprintPure, meta = (DisplayName = "Pow[BigInteger, float]", CompactNodeTitle = "POW", Keywords = "pow"), Category = "Math|BigInteger")
721 static FBigInteger Pow_BigIntegerFloat(const FBigInteger& Base, float Exponent);
722
730 UFUNCTION(BlueprintPure, meta = (DisplayName = "Equal [Integer==BigInteger]", CompactNodeTitle = "==", Keywords = "== equal"), Category = "Math|BigInteger")
731 static bool EqualEqual_IntegerBigInteger(int32 A, const FBigInteger& B);
732
740 UFUNCTION(BlueprintPure, meta = (DisplayName = "Equal [Integer64==BigInteger]", CompactNodeTitle = "==", Keywords = "== equal"), Category = "Math|BigInteger")
741 static bool EqualEqual_Integer64BigInteger(int64 A, const FBigInteger& B);
742
750 UFUNCTION(BlueprintPure, meta = (DisplayName = "Equal [BigInteger==Integer]", CompactNodeTitle = "==", Keywords = "== equal"), Category = "Math|BigInteger")
751 static bool EqualEqual_BigIntegerInteger(const FBigInteger& A, int32 B);
752
760 UFUNCTION(BlueprintPure, meta = (DisplayName = "Equal [BigInteger==Integer64]", CompactNodeTitle = "==", Keywords = "== equal"), Category = "Math|BigInteger")
761 static bool EqualEqual_BigIntegerInteger64(const FBigInteger& A, int64 B);
762
770 UFUNCTION(BlueprintPure, meta = (DisplayName = "Equal [BigInteger]", CompactNodeTitle = "==", ScriptMethod = "Equals", ScriptOperator = "==", Keywords = "== equal"), Category = "Math|BigInteger")
771 static bool EqualEqual_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
772
780 UFUNCTION(BlueprintPure, meta = (DisplayName = "Not Equal [Integer!=BigInteger]", CompactNodeTitle = "!=", Keywords = "!= not equal"), Category = "Math|BigInteger")
781 static bool NotEqual_IntegerBigInteger(int32 A, const FBigInteger& B);
782
790 UFUNCTION(BlueprintPure, meta = (DisplayName = "Not Equal [Integer64!=BigInteger]", CompactNodeTitle = "!=", Keywords = "!= not equal"), Category = "Math|BigInteger")
791 static bool NotEqual_Integer64BigInteger(int64 A, const FBigInteger& B);
792
800 UFUNCTION(BlueprintPure, meta = (DisplayName = "Not Equal [BigInteger!=Integer]", CompactNodeTitle = "!=", Keywords = "!= not equal"), Category = "Math|BigInteger")
801 static bool NotEqual_BigIntegerInteger(const FBigInteger& A, int32 B);
802
810 UFUNCTION(BlueprintPure, meta = (DisplayName = "Not Equal [BigInteger!=Integer64]", CompactNodeTitle = "!=", Keywords = "!= not equal"), Category = "Math|BigInteger")
811 static bool NotEqual_BigIntegerInteger64(const FBigInteger& A, int64 B);
812
820 UFUNCTION(BlueprintPure, meta = (DisplayName = "Not Equal [BigInteger]", CompactNodeTitle = "!=", ScriptMethod = "NotEqual", ScriptOperator = "!=", Keywords = "!= not equal"), Category = "Math|BigInteger")
821 static bool NotEqual_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
822
830 UFUNCTION(BlueprintPure, meta = (DisplayName = "Integer < BigInteger", CompactNodeTitle = "<", Keywords = "< less"), Category = "Math|BigInteger")
831 static bool Less_IntegerBigInteger(int32 B, const FBigInteger& A);
832
840 UFUNCTION(BlueprintPure, meta = (DisplayName = "Integer64 < BigInteger", CompactNodeTitle = "<", Keywords = "< less"), Category = "Math|BigInteger")
841 static bool Less_Integer64BigInteger(int64 B, const FBigInteger& A);
842
850 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger < Integer", CompactNodeTitle = "<", Keywords = "< less"), Category = "Math|BigInteger")
851 static bool Less_BigIntegerInteger(const FBigInteger& A, int32 B);
852
860 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger < Integer64", CompactNodeTitle = "<", Keywords = "< less"), Category = "Math|BigInteger")
861 static bool Less_BigIntegerInteger64(const FBigInteger& A, int64 B);
862
870 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger < BigInteger", CompactNodeTitle = "<", Keywords = "< less"), Category = "Math|BigInteger")
871 static bool Less_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
872
880 UFUNCTION(BlueprintPure, meta = (DisplayName = "Integer > BigInteger", CompactNodeTitle = ">", Keywords = "> greater"), Category = "Math|BigInteger")
881 static bool Greater_IntegerBigInteger(int32 A, const FBigInteger& B);
882
890 UFUNCTION(BlueprintPure, meta = (DisplayName = "Integer64 > BigInteger", CompactNodeTitle = ">", Keywords = "> greater"), Category = "Math|BigInteger")
891 static bool Greater_Integer64BigInteger(int64 A, const FBigInteger& B);
892
900 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger > Integer", CompactNodeTitle = ">", Keywords = "> greater"), Category = "Math|BigInteger")
901 static bool Greater_BigIntegerInteger(const FBigInteger& A, int32 B);
902
910 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger > Integer64", CompactNodeTitle = ">", Keywords = "> greater"), Category = "Math|BigInteger")
911 static bool Greater_BigIntegerInteger64(const FBigInteger& A, int64 B);
912
920 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger > BigInteger", CompactNodeTitle = ">", Keywords = "> greater"), Category = "Math|BigInteger")
921 static bool Greater_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
922
930 UFUNCTION(BlueprintPure, meta = (DisplayName = "Integer <= BigInteger", CompactNodeTitle = "<=", Keywords = "<= less"), Category = "Math|BigInteger")
931 static bool LessEqual_IntegerBigInteger(int32 A, const FBigInteger& B);
932
940 UFUNCTION(BlueprintPure, meta = (DisplayName = "Integer64 <= BigInteger", CompactNodeTitle = "<=", Keywords = "<= less"), Category = "Math|BigInteger")
941 static bool LessEqual_Integer64BigInteger(int64 A, const FBigInteger& B);
942
950 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger <= Integer", CompactNodeTitle = "<=", Keywords = "<= less"), Category = "Math|BigInteger")
951 static bool LessEqual_BigIntegerInteger(const FBigInteger& A, int32 B);
952
960 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger <= Integer64", CompactNodeTitle = "<=", Keywords = "<= less"), Category = "Math|BigInteger")
961 static bool LessEqual_BigIntegerInteger64(const FBigInteger& A, int64 B);
962
970 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger <= BigInteger", CompactNodeTitle = "<=", Keywords = "<= less"), Category = "Math|BigInteger")
971 static bool LessEqual_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
972
980 UFUNCTION(BlueprintPure, meta = (DisplayName = "Integer >= BigInteger", CompactNodeTitle = ">=", Keywords = ">= greater"), Category = "Math|BigInteger")
981 static bool GreaterEqual_IntegerBigInteger(int32 A, const FBigInteger& B);
982
990 UFUNCTION(BlueprintPure, meta = (DisplayName = "Integer64 >= BigInteger", CompactNodeTitle = ">=", Keywords = ">= greater"), Category = "Math|BigInteger")
991 static bool GreaterEqual_Integer64BigInteger(int64 A, const FBigInteger& B);
992
1000 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger >= Integer", CompactNodeTitle = ">=", Keywords = ">= greater"), Category = "Math|BigInteger")
1001 static bool GreaterEqual_BigIntegerInteger(const FBigInteger& A, int32 B);
1002
1010 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger >= Integer64", CompactNodeTitle = ">=", Keywords = ">= greater"), Category = "Math|BigInteger")
1011 static bool GreaterEqual_BigIntegerInteger64(const FBigInteger& A, int64 B);
1012
1020 UFUNCTION(BlueprintPure, meta = (DisplayName = "BigInteger >= BigInteger", CompactNodeTitle = ">=", Keywords = ">= greater"), Category = "Math|BigInteger")
1021 static bool GreaterEqual_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
1022
1029 UFUNCTION(BlueprintPure, meta = (CompactNodeTitle = "SQRT"), Category = "Math|BigInteger")
1030 static FBigInteger Sqrt_BigInteger(const FBigInteger& In);
1031
1038 UFUNCTION(BlueprintPure, meta = (DisplayName = "Floor Log2", CompactNodeTitle = "FLOG2", Keywords = "log floor"), Category = "Math|BigInteger")
1039 static int32 FloorLog2_BigInteger(const FBigInteger& In);
1040
1048 UFUNCTION(BlueprintPure, meta = (DisplayName = "Floor Log10", CompactNodeTitle = "FLOG10", Keywords = "log floor"), Category = "Math|BigInteger")
1049 static int32 FloorLog10_BigInteger(const FBigInteger& In);
1050
1057 UFUNCTION(BlueprintPure, meta = (DisplayName = "Log2 [Float]", CompactNodeTitle = "LOG2", Keywords = "log"), Category = "Math|BigInteger")
1058 static float Log2_BigInteger(const FBigInteger& In);
1059
1066 UFUNCTION(BlueprintPure, meta = (DisplayName = "Log10 [Float]", CompactNodeTitle = "LOG10", Keywords = "log"), Category = "Math|BigInteger")
1067 static float Log10_BigInteger(const FBigInteger& In);
1068
1075 UFUNCTION(BlueprintPure, meta = (DisplayName = "LogE [Float]", CompactNodeTitle = "LOGe", Keywords = "log"), Category = "Math|BigInteger")
1076 static float Loge_BigInteger(const FBigInteger& In);
1077
1085 UFUNCTION(BlueprintPure, meta = (DisplayName = "Log [Float]", CompactNodeTitle = "LOG", Keywords = "log"), Category = "Math|BigInteger")
1086 static float Log_BigIntegerFloat(const FBigInteger& In, float Base);
1087
1094 UFUNCTION(BlueprintPure, meta = (DisplayName = "Log2 [Double]", CompactNodeTitle = "LOG2", Keywords = "log"), Category = "Math|BigInteger")
1095 static double Log2D_BigInteger(const FBigInteger& In);
1096
1103 UFUNCTION(BlueprintPure, meta = (DisplayName = "Log10 [Double]", CompactNodeTitle = "LOG10", Keywords = "log"), Category = "Math|BigInteger")
1104 static double Log10D_BigInteger(const FBigInteger& In);
1105
1112 UFUNCTION(BlueprintPure, meta = (DisplayName = "LogE [Double]", CompactNodeTitle = "LOGe", Keywords = "log"), Category = "Math|BigInteger")
1113 static double LogeD_BigInteger(const FBigInteger& In);
1114
1122 UFUNCTION(BlueprintPure, meta = (DisplayName = "Log [Double]", CompactNodeTitle = "LOG", Keywords = "log"), Category = "Math|BigInteger")
1123 static double Log_BigIntegerDouble(const FBigInteger& In, double Base);
1124
1132 UFUNCTION(BlueprintPure, meta = (DisplayName = "Greatest Common Divisor [BigInteger]", CompactNodeTitle = "GCD", Keywords = "gcd"), Category = "Math|BigInteger")
1133 static FBigInteger Gcd_BigIntegerBigInteger(const FBigInteger& A, const FBigInteger& B);
1134
1141 UFUNCTION(BlueprintPure, meta = (DisplayName = "Can Fit Into Integer"), Category = "Math|BigInteger")
1142 static bool CanFitIntoInteger_BigInteger(const FBigInteger& In);
1143
1150 UFUNCTION(BlueprintPure, meta = (DisplayName = "Can Fit Into Integer64"), Category = "Math|BigInteger")
1151 static bool CanFitIntoInteger64_BigInteger(const FBigInteger& In);
1152
1159 UFUNCTION(BlueprintPure, meta = (DisplayName = "Can Fit Into Float"), Category = "Math|BigInteger")
1160 static bool CanFitIntoFloat_BigInteger(const FBigInteger& In);
1161
1168 UFUNCTION(BlueprintPure, meta = (DisplayName = "Can Fit Into Double"), Category = "Math|BigInteger")
1169 static bool CanFitIntoDouble_BigInteger(const FBigInteger& In);
1170
1177 UFUNCTION(BlueprintPure, meta = (DisplayName = "Can Fit Into Float [Lossy]"), Category = "Math|BigInteger")
1178 static bool CanFitIntoFloatLossy_BigInteger(const FBigInteger& In);
1179
1186 UFUNCTION(BlueprintPure, meta = (DisplayName = "Can Fit Into Double [Lossy]"), Category = "Math|BigInteger")
1187 static bool CanFitIntoDoubleLossy_BigInteger(const FBigInteger& In);
1188
1195 UFUNCTION(BlueprintPure, meta = (DisplayName = "Is -1", CompactNodeTitle = "==-1"), Category = "Math|BigInteger")
1196 static bool IsMinusOne_BigInteger(const FBigInteger& In);
1197
1204 UFUNCTION(BlueprintPure, meta = (DisplayName = "Is 0", CompactNodeTitle = "==0"), Category = "Math|BigInteger")
1205 static bool IsZero_BigInteger(const FBigInteger& In);
1206
1213 UFUNCTION(BlueprintPure, meta = (DisplayName = "Is 1", CompactNodeTitle = "==1"), Category = "Math|BigInteger")
1214 static bool IsOne_BigInteger(const FBigInteger& In);
1215
1222 UFUNCTION(BlueprintPure, meta = (DisplayName = "Is Positive", CompactNodeTitle = ">0"), Category = "Math|BigInteger")
1223 static bool IsPositive_BigInteger(const FBigInteger& In);
1224
1231 UFUNCTION(BlueprintPure, meta = (DisplayName = "Is Negative", CompactNodeTitle = "<0"), Category = "Math|BigInteger")
1232 static bool IsNegative_BigInteger(const FBigInteger& In);
1233
1240 UFUNCTION(BlueprintPure, meta = (DisplayName = "Is Even", CompactNodeTitle = "Even?"), Category = "Math|BigInteger")
1241 static bool IsEven_BigInteger(const FBigInteger& In);
1242
1249 UFUNCTION(BlueprintPure, meta = (DisplayName = "Is Odd", CompactNodeTitle = "Odd?"), Category = "Math|BigInteger")
1250 static bool IsOdd_BigInteger(const FBigInteger& In);
1251
1258 UFUNCTION(BlueprintPure, meta = (DisplayName = "Is Power of Two", CompactNodeTitle = "Pow2?"), Category = "Math|BigInteger")
1259 static bool IsPowerOfTwo_BigInteger(const FBigInteger& In);
1260};
1261
1262// If conditional inlining is ON, include inlinable functions here.
1263#if DBN_INLINE_ENABLED
1264#include "BigIntegerLibrary.inl"
1265#endif
Definition: BigIntegerLibrary.h:16
Definition: BigInteger.h:50