mirror of https://github.com/bsnes-emu/bsnes.git
34 lines
622 B
C++
34 lines
622 B
C++
#pragma once
|
|
|
|
namespace nall {
|
|
|
|
namespace Hash {
|
|
auto CRC16::digest() -> string {
|
|
return hex(value(), 4L);
|
|
}
|
|
|
|
auto CRC32::digest() -> string {
|
|
return hex(value(), 8L);
|
|
}
|
|
|
|
auto SHA256::digest() const -> string {
|
|
string result;
|
|
for(auto n : value()) result.append(hex(n, 2L));
|
|
return result;
|
|
}
|
|
}
|
|
|
|
auto crc16(rstring self) -> string {
|
|
return Hash::CRC16(self.data(), self.size()).digest();
|
|
}
|
|
|
|
auto crc32(rstring self) -> string {
|
|
return Hash::CRC32(self.data(), self.size()).digest();
|
|
}
|
|
|
|
auto sha256(rstring self) -> string {
|
|
return Hash::SHA256(self.data(), self.size()).digest();
|
|
}
|
|
|
|
}
|