nostrdb

an unfairly fast embedded nostr database backed by lmdb
git clone git://jb55.com/nostrdb
Log | Files | Refs | Submodules | README | LICENSE

commit b2b6bc65ccf010bda4bda509edcdc31518c585cd
parent f8aad4dbf2a71d47637c92c8ac015406b9b4bb2d
Author: William Casarin <jb55@jb55.com>
Date:   Thu,  3 Jul 2025 16:07:29 -0700

add ndb_builder_push_tag_id

Signed-off-by: William Casarin <jb55@jb55.com>

Diffstat:
Msrc/nostrdb.c | 10++++++++++
Msrc/nostrdb.h | 1+
2 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/src/nostrdb.c b/src/nostrdb.c @@ -7739,6 +7739,16 @@ int ndb_builder_push_tag_str(struct ndb_builder *builder, return ndb_builder_finalize_tag(builder, pstr); } +/// Push an id element to the current tag. Needs to be 32 bytes +int ndb_builder_push_tag_id(struct ndb_builder *builder, + unsigned char *id) +{ + union ndb_packed_str pstr; + if (!ndb_builder_push_packed_id(builder, id, &pstr)) + return 0; + return ndb_builder_finalize_tag(builder, pstr); +} + // // CONFIG // diff --git a/src/nostrdb.h b/src/nostrdb.h @@ -546,6 +546,7 @@ void ndb_builder_set_id(struct ndb_builder *builder, unsigned char *id); void ndb_builder_set_kind(struct ndb_builder *builder, uint32_t kind); int ndb_builder_new_tag(struct ndb_builder *builder); int ndb_builder_push_tag_str(struct ndb_builder *builder, const char *str, int len); +int ndb_builder_push_tag_id(struct ndb_builder *builder, unsigned char *id); // FILTERS int ndb_filter_init(struct ndb_filter *);