[ox/claw] Cleanup error handling
This commit is contained in:
parent
6c629a9f13
commit
ee6929c7f0
9
deps/ox/src/ox/claw/read.hpp
vendored
9
deps/ox/src/ox/claw/read.hpp
vendored
@ -37,18 +37,17 @@ Result<Vector<char>> stripClawHeader(const char *buff, std::size_t buffLen) noex
|
|||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
Error readClaw(const char *buff, std::size_t buffLen, T *val) {
|
Error readClaw(const char *buff, std::size_t buffLen, T *val) {
|
||||||
auto header = detail::readHeader(buff, buffLen);
|
oxRequire(header, detail::readHeader(buff, buffLen));
|
||||||
oxReturnError(header);
|
switch (header.fmt) {
|
||||||
switch (header.value.fmt) {
|
|
||||||
case ClawFormat::Metal:
|
case ClawFormat::Metal:
|
||||||
{
|
{
|
||||||
MetalClawReader reader(bit_cast<uint8_t*>(header.value.data), buffLen);
|
MetalClawReader reader(bit_cast<uint8_t*>(header.data), buffLen);
|
||||||
return model(&reader, val);
|
return model(&reader, val);
|
||||||
}
|
}
|
||||||
#ifdef OX_USE_STDLIB
|
#ifdef OX_USE_STDLIB
|
||||||
case ClawFormat::Organic:
|
case ClawFormat::Organic:
|
||||||
{
|
{
|
||||||
OrganicClawReader reader(bit_cast<uint8_t*>(header.value.data), buffLen);
|
OrganicClawReader reader(bit_cast<uint8_t*>(header.data), buffLen);
|
||||||
return model(&reader, val);
|
return model(&reader, val);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user