squall/storm/Big.hpp

62 lines
1.3 KiB
C++
Raw Normal View History

#ifndef STORM_BIG_HPP
#define STORM_BIG_HPP
#include "storm/big/BigData.hpp"
#include <cstdint>
2023-01-29 22:12:59 -06:00
void SBigAdd(BigData* a, BigData* b, BigData* c);
2024-11-15 00:57:52 -08:00
void SBigAnd(BigData* a, BigData* b, BigData* c);
2023-02-01 22:54:33 -06:00
void SBigBitLen(BigData* num, uint32_t* len);
2023-02-01 22:16:58 -06:00
int32_t SBigCompare(BigData* a, BigData* b);
2024-11-15 01:20:08 -08:00
void SBigCopy(BigData* a, BigData* b);
2024-11-15 03:22:16 -08:00
void SBigDec(BigData* a, BigData* b);
2023-01-29 20:14:01 -06:00
void SBigDel(BigData* num);
2024-11-15 07:52:35 -08:00
void SBigDiv(BigData* a, BigData* b, BigData* c);
2023-01-29 20:37:09 -06:00
void SBigFromBinary(BigData* num, const void* data, uint32_t bytes);
2024-11-15 03:50:22 -08:00
void SBigFromStr(BigData* num, const char* str);
void SBigFromUnsigned(BigData* num, uint32_t val);
2024-11-15 04:00:22 -08:00
void SBigInc(BigData* a, BigData* b);
2024-11-15 08:27:03 -08:00
int32_t SBigIsEven(BigData* a);
2024-11-15 08:31:27 -08:00
int32_t SBigIsOdd(BigData* a);
2024-11-15 08:35:42 -08:00
int32_t SBigIsOne(BigData* a);
2024-11-15 08:38:56 -08:00
int32_t SBigIsZero(BigData* a);
2023-02-04 14:03:45 -06:00
void SBigMod(BigData* a, BigData* b, BigData* c);
2023-01-30 00:10:52 -06:00
void SBigMul(BigData* a, BigData* b, BigData* c);
void SBigNew(BigData** num);
2024-11-15 09:01:26 -08:00
void SBigNot(BigData* a, BigData* b);
2024-11-15 09:26:28 -08:00
void SBigOr(BigData* a, BigData* b, BigData* c);
2023-02-05 16:36:38 -06:00
void SBigPowMod(BigData* a, BigData* b, BigData* c, BigData* d);
2023-02-03 16:20:07 -06:00
void SBigShl(BigData* a, BigData* b, uint32_t shift);
2023-02-03 14:50:34 -06:00
void SBigShr(BigData* a, BigData* b, uint32_t shift);
2023-02-03 08:15:06 -06:00
void SBigSquare(BigData* a, BigData* b);
2023-02-01 21:29:16 -06:00
void SBigSub(BigData* a, BigData* b, BigData* c);
void SBigToBinaryBuffer(BigData* num, uint8_t* data, uint32_t maxBytes, uint32_t* bytes);
#endif