From b38f9156ce5f31d61b500c6783ced406782d6e58 Mon Sep 17 00:00:00 2001 From: Alex Denes Date: Sat, 6 Nov 2021 20:11:17 +0000 Subject: [PATCH] Make size converters available publicly --- baseven.c | 6 +++++- baseven.h | 5 +++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/baseven.c b/baseven.c index 36d1a39..d712679 100644 --- a/baseven.c +++ b/baseven.c @@ -52,7 +52,11 @@ enum { // Avoid collision in error numbers const struct corelibs_baseven_interface cl_baseven = { .encode = corelibs_baseven_encode, .decode = corelibs_baseven_decode, - .err = { + .size = { + .decoded = corelibs_baseven_size_decoded, + .encoded = corelibs_baseven_size_encoded, + }, + .err = { .ok = CORELIBS_BASEVEN_ERR_OK, .unknown = CORELIBS_BASEVEN_ERR_UNKOWN, .mem = { diff --git a/baseven.h b/baseven.h index f1a3d5d..c245284 100644 --- a/baseven.h +++ b/baseven.h @@ -31,6 +31,11 @@ struct corelibs_baseven_interface { cl_baseven_err (*const encode) (const uint8_t *src, size_t len, uint8_t *dest, size_t cap); cl_baseven_err (*const decode) (const uint8_t *src, size_t len, uint8_t *dest, size_t cap); + const struct { + uintmax_t (*const decoded) (uintmax_t enc_size); + uintmax_t (*const encoded) (uintmax_t dec_size); + } size; + // Errors - functions return them on run-time problems const struct {