mirror of
https://github.com/thunderbrewhq/squall.git
synced 2025-12-12 10:32:29 +00:00
feat(big): add SetZero
This commit is contained in:
parent
f1cf4af382
commit
8413214ae0
3 changed files with 22 additions and 0 deletions
|
|
@ -82,6 +82,10 @@ void Mul(BigBuffer& a, const BigBuffer& b, const BigBuffer& c, BigStack& stack)
|
||||||
stack.UnmakeDistinct(a, aa);
|
stack.UnmakeDistinct(a, aa);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SetZero(BigBuffer& buffer) {
|
||||||
|
buffer.Clear();
|
||||||
|
}
|
||||||
|
|
||||||
void ToBinaryAppend(TSGrowableArray<uint8_t>& output, const BigBuffer& buffer) {
|
void ToBinaryAppend(TSGrowableArray<uint8_t>& output, const BigBuffer& buffer) {
|
||||||
for (uint32_t i = 0; i < buffer.Count() * 4; i++) {
|
for (uint32_t i = 0; i < buffer.Count() * 4; i++) {
|
||||||
auto byte = buffer[i / 4] >> (8 * (i & 3));
|
auto byte = buffer[i / 4] >> (8 * (i & 3));
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,8 @@ void Mul(BigBuffer& a, const BigBuffer& b, uint64_t c);
|
||||||
|
|
||||||
void Mul(BigBuffer& a, const BigBuffer& b, const BigBuffer& c, BigStack& stack);
|
void Mul(BigBuffer& a, const BigBuffer& b, const BigBuffer& c, BigStack& stack);
|
||||||
|
|
||||||
|
void SetZero(BigBuffer& buffer);
|
||||||
|
|
||||||
void ToBinary(TSGrowableArray<uint8_t>& output, const BigBuffer& buffer);
|
void ToBinary(TSGrowableArray<uint8_t>& output, const BigBuffer& buffer);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
16
test/Big.cpp
16
test/Big.cpp
|
|
@ -420,3 +420,19 @@ TEST_CASE("SBigToBinaryBuffer", "[big]") {
|
||||||
SBigDel(num);
|
SBigDel(num);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST_CASE("SetZero", "[big]") {
|
||||||
|
SECTION("sets buffer to zero") {
|
||||||
|
BigData* num;
|
||||||
|
SBigNew(&num);
|
||||||
|
SBigFromUnsigned(num, 0x12345678);
|
||||||
|
|
||||||
|
CHECK(num->Primary().Count() == 1);
|
||||||
|
|
||||||
|
SetZero(num->Primary());
|
||||||
|
|
||||||
|
CHECK(num->Primary().Count() == 0);
|
||||||
|
|
||||||
|
SBigDel(num);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue