Skip to content

Commit

Permalink
Merge pull request #78 from larsewi/cleanup
Browse files Browse the repository at this point in the history
Some clean-up
  • Loading branch information
larsewi authored Jan 3, 2025
2 parents 1b26475 + 6a91a73 commit f8b5b75
Show file tree
Hide file tree
Showing 21 changed files with 387 additions and 438 deletions.
2 changes: 1 addition & 1 deletion configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
# Process this file with autoconf to produce a configure script.

AC_PREREQ([2.63])
AC_INIT([leech], [0.1.20], [https://github.com/larsewi/leech/issues], [leech],
AC_INIT([leech], [0.1.21], [https://github.com/larsewi/leech/issues], [leech],
[https://github.com/larsewi/leech])
AC_CONFIG_SRCDIR([lib/leech.h])

Expand Down
5 changes: 1 addition & 4 deletions lib/Makefile.am
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
AM_CFLAGS = -Wall -Wextra -Wconversion -Wformat
if !NDEBUG
AM_CFLAGS += -Werror
endif
AM_CFLAGS = -Wall -Wextra -Werror
AM_CPPFLAGS = -include config.h

include_HEADERS = $(top_builddir)/lib/leech.h
Expand Down
46 changes: 24 additions & 22 deletions lib/block.c
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,17 @@ LCH_Json *LCH_BlockCreate(const char *const parent_id,
}

{
const LCH_Buffer *const key = LCH_BufferStaticFromString("version");
if (!LCH_JsonObjectSetNumber(block, key, (double)LCH_BLOCK_VERSION)) {
const LCH_Buffer key = LCH_BufferStaticFromString("version");
if (!LCH_JsonObjectSetNumber(block, &key, (double)LCH_BLOCK_VERSION)) {
LCH_JsonDestroy(block);
return NULL;
}
}

{
const time_t timestamp = time(NULL);
const LCH_Buffer *const key = LCH_BufferStaticFromString("timestamp");
if (!LCH_JsonObjectSetNumber(block, key, (double)timestamp)) {
const LCH_Buffer key = LCH_BufferStaticFromString("timestamp");
if (!LCH_JsonObjectSetNumber(block, &key, (double)timestamp)) {
LCH_LOG_ERROR("Failed to set timestamp field in block");
LCH_JsonDestroy(block);
return NULL;
Expand All @@ -45,16 +45,18 @@ LCH_Json *LCH_BlockCreate(const char *const parent_id,
return NULL;
}

if (!LCH_JsonObjectSetString(block, LCH_BufferStaticFromString("parent"),
parent)) {
LCH_LOG_ERROR("Failed to set parent block identifier field in block");
LCH_BufferDestroy(parent);
LCH_JsonDestroy(block);
return NULL;
{
const LCH_Buffer key = LCH_BufferStaticFromString("parent");
if (!LCH_JsonObjectSetString(block, &key, parent)) {
LCH_LOG_ERROR("Failed to set parent block identifier field in block");
LCH_BufferDestroy(parent);
LCH_JsonDestroy(block);
return NULL;
}
}

if (!LCH_JsonObjectSet(block, LCH_BufferStaticFromString("payload"),
payload)) {
const LCH_Buffer key = LCH_BufferStaticFromString("payload");
if (!LCH_JsonObjectSet(block, &key, payload)) {
LCH_LOG_ERROR("Failed to set payload field in block");
LCH_JsonDestroy(block);
return NULL;
Expand Down Expand Up @@ -117,8 +119,8 @@ bool LCH_BlockStore(const LCH_Instance *const instance,

bool LCH_BlockGetVersion(const LCH_Json *const block, size_t *const version) {
double value;
const LCH_Buffer *const key = LCH_BufferStaticFromString("version");
if (!LCH_JsonObjectGetNumber(block, key, &value)) {
const LCH_Buffer key = LCH_BufferStaticFromString("version");
if (!LCH_JsonObjectGetNumber(block, &key, &value)) {
return false;
}

Expand Down Expand Up @@ -159,8 +161,8 @@ LCH_Json *LCH_BlockLoad(const char *const work_dir,
}

const char *LCH_BlockGetParentId(const LCH_Json *const block) {
const LCH_Buffer *const parent =
LCH_JsonObjectGetString(block, LCH_BufferStaticFromString("parent"));
const LCH_Buffer key = LCH_BufferStaticFromString("parent");
const LCH_Buffer *const parent = LCH_JsonObjectGetString(block, &key);
if (parent == NULL) {
LCH_LOG_ERROR("Failed to retrieve parent block identifier");
return NULL;
Expand All @@ -173,8 +175,8 @@ bool LCH_BlockIsGenisisId(const char *const block_id) {
}

const LCH_Json *LCH_BlockGetPayload(const LCH_Json *const block) {
const LCH_Json *const payload =
LCH_JsonObjectGetArray(block, LCH_BufferStaticFromString("payload"));
const LCH_Buffer key = LCH_BufferStaticFromString("payload");
const LCH_Json *const payload = LCH_JsonObjectGetArray(block, &key);
if (payload == NULL) {
LCH_LOG_ERROR("Failed to get payload from block");
return NULL;
Expand All @@ -183,8 +185,8 @@ const LCH_Json *LCH_BlockGetPayload(const LCH_Json *const block) {
}

LCH_Json *LCH_BlockRemovePayload(const LCH_Json *const block) {
LCH_Json *const payload_val =
LCH_JsonObjectRemoveArray(block, LCH_BufferStaticFromString("payload"));
const LCH_Buffer key = LCH_BufferStaticFromString("payload");
LCH_Json *const payload_val = LCH_JsonObjectRemoveArray(block, &key);
if (payload_val == NULL) {
LCH_LOG_ERROR("Failed to remove payload from block");
return NULL;
Expand All @@ -194,8 +196,8 @@ LCH_Json *LCH_BlockRemovePayload(const LCH_Json *const block) {

bool LCH_BlockGetTimestamp(const LCH_Json *const block,
double *const timestamp) {
const LCH_Buffer *const key = LCH_BufferStaticFromString("timestamp");
if (!LCH_JsonObjectGetNumber(block, key, timestamp)) {
const LCH_Buffer key = LCH_BufferStaticFromString("timestamp");
if (!LCH_JsonObjectGetNumber(block, &key, timestamp)) {
return false;
}
return true;
Expand Down
15 changes: 0 additions & 15 deletions lib/buffer.c
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
#include <fcntl.h>
#include <stdarg.h>
#include <stdint.h>
#include <string.h>
#include <unistd.h>

#ifdef _WIN32
Expand All @@ -19,12 +18,6 @@
#include "files.h"
#include "logger.h"

struct LCH_Buffer {
size_t length;
size_t capacity;
char *buffer;
};

static bool EnsureCapacity(LCH_Buffer *const self, const size_t needed) {
assert(self != NULL);

Expand Down Expand Up @@ -223,14 +216,6 @@ LCH_Buffer *LCH_BufferFromString(const char *const str) {
return buffer;
}

const LCH_Buffer *LCH_BufferStaticFromString(const char *const str) {
static LCH_Buffer buffer;
buffer.buffer = (char *)str;
buffer.length = strlen(str);
buffer.capacity = 0;
return &buffer;
}

bool LCH_BufferWriteFile(const LCH_Buffer *buffer, const char *filename) {
assert(buffer != NULL);
assert(filename != NULL);
Expand Down
17 changes: 15 additions & 2 deletions lib/buffer.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,28 @@

#include <stdbool.h>
#include <stdlib.h>
#include <string.h>

#include "leech.h"

/**
* Put private LCH_Buffer functions here:
*/

struct LCH_Buffer {
size_t length;
size_t capacity;
char *buffer;
};

static inline LCH_Buffer LCH_BufferStaticFromString(const char *const str) {
LCH_Buffer buffer;
buffer.buffer = (char *)str;
buffer.length = strlen(str);
buffer.capacity = 0;
return buffer;
}

/**
* @brief allocate memory in buffer.
* @param[in] buffer buffer.
Expand Down Expand Up @@ -37,8 +52,6 @@ void LCH_BufferSet(LCH_Buffer *buffer, size_t offset, const void *value,
*/
bool LCH_BufferBytesToHex(LCH_Buffer *hex, const LCH_Buffer *bytes);

const LCH_Buffer *LCH_BufferStaticFromString(const char *str);

void LCH_BufferTrim(LCH_Buffer *buffer, char ch);

bool LCH_BufferAppendBuffer(LCH_Buffer *buffer, const LCH_Buffer *append);
Expand Down
52 changes: 26 additions & 26 deletions lib/delta.c
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ LCH_Json *LCH_DeltaCreate(const char *const table_id, const char *const type,
return NULL;
}

const LCH_Buffer *const key = LCH_BufferStaticFromString("type");
if (!LCH_JsonObjectSetString(delta, key, value)) {
const LCH_Buffer key = LCH_BufferStaticFromString("type");
if (!LCH_JsonObjectSetString(delta, &key, value)) {
LCH_BufferDestroy(value);
LCH_JsonDestroy(delta);
return NULL;
Expand All @@ -39,8 +39,8 @@ LCH_Json *LCH_DeltaCreate(const char *const table_id, const char *const type,
return NULL;
}

const LCH_Buffer *const key = LCH_BufferStaticFromString("id");
if (!LCH_JsonObjectSetString(delta, key, value)) {
const LCH_Buffer key = LCH_BufferStaticFromString("id");
if (!LCH_JsonObjectSetString(delta, &key, value)) {
LCH_BufferDestroy(value);
LCH_JsonDestroy(delta);
return NULL;
Expand All @@ -54,8 +54,8 @@ LCH_Json *LCH_DeltaCreate(const char *const table_id, const char *const type,
return NULL;
}

const LCH_Buffer *const key = LCH_BufferStaticFromString("inserts");
if (!LCH_JsonObjectSet(delta, key, value)) {
const LCH_Buffer key = LCH_BufferStaticFromString("inserts");
if (!LCH_JsonObjectSet(delta, &key, value)) {
LCH_JsonDestroy(value);
LCH_JsonDestroy(delta);
return NULL;
Expand All @@ -69,8 +69,8 @@ LCH_Json *LCH_DeltaCreate(const char *const table_id, const char *const type,
return NULL;
}

const LCH_Buffer *const key = LCH_BufferStaticFromString("deletes");
if (!LCH_JsonObjectSet(delta, key, value)) {
const LCH_Buffer key = LCH_BufferStaticFromString("deletes");
if (!LCH_JsonObjectSet(delta, &key, value)) {
LCH_JsonDestroy(value);
LCH_JsonDestroy(delta);
return NULL;
Expand All @@ -86,8 +86,8 @@ LCH_Json *LCH_DeltaCreate(const char *const table_id, const char *const type,
return NULL;
}

const LCH_Buffer *const key = LCH_BufferStaticFromString("updates");
if (!LCH_JsonObjectSet(delta, key, value)) {
const LCH_Buffer key = LCH_BufferStaticFromString("updates");
if (!LCH_JsonObjectSet(delta, &key, value)) {
LCH_JsonDestroy(value);
LCH_JsonDestroy(delta);
return NULL;
Expand All @@ -98,38 +98,38 @@ LCH_Json *LCH_DeltaCreate(const char *const table_id, const char *const type,
}

const char *LCH_DeltaGetTableId(const LCH_Json *const delta) {
const LCH_Buffer *const key = LCH_BufferStaticFromString("id");
const LCH_Buffer *const value = LCH_JsonObjectGetString(delta, key);
const LCH_Buffer key = LCH_BufferStaticFromString("id");
const LCH_Buffer *const value = LCH_JsonObjectGetString(delta, &key);
if (value == NULL) {
return NULL;
}
return LCH_BufferData(value);
}

const char *LCH_DeltaGetType(const LCH_Json *const delta) {
const LCH_Buffer *const key = LCH_BufferStaticFromString("type");
const LCH_Buffer *const value = LCH_JsonObjectGetString(delta, key);
const LCH_Buffer key = LCH_BufferStaticFromString("type");
const LCH_Buffer *const value = LCH_JsonObjectGetString(delta, &key);
if (value == NULL) {
return NULL;
}
return LCH_BufferData(value);
}

const LCH_Json *LCH_DeltaGetInserts(const LCH_Json *const delta) {
const LCH_Buffer *const key = LCH_BufferStaticFromString("inserts");
const LCH_Json *const value = LCH_JsonObjectGetObject(delta, key);
const LCH_Buffer key = LCH_BufferStaticFromString("inserts");
const LCH_Json *const value = LCH_JsonObjectGetObject(delta, &key);
return value;
}

const LCH_Json *LCH_DeltaGetDeletes(const LCH_Json *const delta) {
const LCH_Buffer *const key = LCH_BufferStaticFromString("deletes");
const LCH_Json *const value = LCH_JsonObjectGetObject(delta, key);
const LCH_Buffer key = LCH_BufferStaticFromString("deletes");
const LCH_Json *const value = LCH_JsonObjectGetObject(delta, &key);
return value;
}

const LCH_Json *LCH_DeltaGetUpdates(const LCH_Json *const delta) {
const LCH_Buffer *const key = LCH_BufferStaticFromString("updates");
const LCH_Json *const value = LCH_JsonObjectGetObject(delta, key);
const LCH_Buffer key = LCH_BufferStaticFromString("updates");
const LCH_Json *const value = LCH_JsonObjectGetObject(delta, &key);
return value;
}

Expand Down Expand Up @@ -165,20 +165,20 @@ bool LCH_DeltaGetNumOperations(const LCH_Json *const delta,
}

static LCH_Json *DeltaRemoveInserts(LCH_Json *const delta) {
const LCH_Buffer *const key = LCH_BufferStaticFromString("inserts");
LCH_Json *const value = LCH_JsonObjectRemoveObject(delta, key);
const LCH_Buffer key = LCH_BufferStaticFromString("inserts");
LCH_Json *const value = LCH_JsonObjectRemoveObject(delta, &key);
return value;
}

static LCH_Json *DeltaRemoveDeletes(LCH_Json *const delta) {
const LCH_Buffer *const key = LCH_BufferStaticFromString("deletes");
LCH_Json *const value = LCH_JsonObjectRemoveObject(delta, key);
const LCH_Buffer key = LCH_BufferStaticFromString("deletes");
LCH_Json *const value = LCH_JsonObjectRemoveObject(delta, &key);
return value;
}

static LCH_Json *DeltaRemoveUpdates(LCH_Json *const delta) {
const LCH_Buffer *const key = LCH_BufferStaticFromString("updates");
LCH_Json *const value = LCH_JsonObjectRemoveObject(delta, key);
const LCH_Buffer key = LCH_BufferStaticFromString("updates");
LCH_Json *const value = LCH_JsonObjectRemoveObject(delta, &key);
return value;
}

Expand Down
Loading

0 comments on commit f8b5b75

Please sign in to comment.