/* * Copyright (C) 2020 Tomasz Kramkowski * SPDX-License-Identifier: MIT */ #ifndef PACK_H #define PACK_H #include enum pack_status { PACK_OK, PACK_FMTINVAL, PACK_TOOSMALL, }; extern enum pack_trace { PACK_TRACE_OFF, PACK_TRACE_CALL, PACK_TRACE_DEBUG, PACK_TRACE_ALL, } pack_trace; enum pack_status pack(void *dest, size_t size, const char *fmt, ...); enum pack_status unpack(const void *buf, size_t size, const char *fmt, ...); const char *pack_strerror(enum pack_status status); #endif // !PACK_H