1
0
Fork 0
mirror of https://github.com/tailix/libkernaux.git synced 2025-04-14 17:32:55 -04:00

Main: reorder args and improve example

This commit is contained in:
Alex Kotov 2022-06-17 18:22:47 +03:00
parent e708de80d0
commit 44ffbdea54
Signed by: kotovalexarian
GPG key ID: 553C0EBBEB5D5F08
3 changed files with 28 additions and 20 deletions

View file

@ -8,19 +8,28 @@
static const char *const hello = "Hello, World!";
static unsigned char files_void[1000];
static char buffer[BUFFER_SIZE];
static char buffer[BUFFER_SIZE];
static struct KernAux_MemStore buffer_mem_store;
static struct KernAux_SizedVoid buffer_mem_store_files_sized_void;
static unsigned char buffer_mem_store_files_void[1000];
void example_main()
{
struct KernAux_SizedVoid files_sized_void =
KernAux_SizedVoid_create(sizeof(files_void), files_void);
KernAux_SizedVoid_init(
&buffer_mem_store_files_sized_void,
buffer_mem_store_files_void,
sizeof(buffer_mem_store_files_void)
);
{
struct KernAux_MemStore mem_store =
KernAux_MemStore_create(&files_sized_void, buffer, BUFFER_SIZE);
KernAux_MemStore_init(
&buffer_mem_store,
&buffer_mem_store_files_sized_void,
buffer,
BUFFER_SIZE
);
KernAux_File file = KernAux_Store_open(&mem_store.store);
KernAux_File file = KernAux_Store_open(&buffer_mem_store.store);
assert(file);
assert(KernAux_File_puts(file, hello));
@ -30,15 +39,14 @@ void example_main()
memset(buffer, 0, sizeof(buffer));
{
struct KernAux_MemStore mem_store;
KernAux_MemStore_init(
&mem_store,
&files_sized_void,
&buffer_mem_store,
&buffer_mem_store_files_sized_void,
buffer,
SMALL_BUFFER_SIZE
);
KernAux_File file = KernAux_Store_open(&mem_store.store);
KernAux_File file = KernAux_Store_open(&buffer_mem_store.store);
assert(file);
assert(!KernAux_File_puts(file, hello));

View file

@ -13,12 +13,12 @@ typedef struct KernAux_SizedVoid {
} *KernAux_SizedVoid;
struct KernAux_SizedVoid
KernAux_SizedVoid_create(size_t memory_size, void *ptr);
KernAux_SizedVoid_create(void *ptr, size_t memory_size);
void KernAux_SizedVoid_init(
KernAux_SizedVoid sized_void,
size_t memory_size,
void *ptr
void *ptr,
size_t memory_size
);
void KernAux_SizedVoid_memset(KernAux_SizedVoid sized_void, int c);

View file

@ -9,24 +9,24 @@
#include <string.h>
struct KernAux_SizedVoid
KernAux_SizedVoid_create(const size_t memory_size, void *const ptr)
KernAux_SizedVoid_create(void *const ptr, const size_t memory_size)
{
KERNAUX_ASSERT(memory_size);
KERNAUX_ASSERT(ptr);
KERNAUX_ASSERT(memory_size);
struct KernAux_SizedVoid sized_void;
KernAux_SizedVoid_init(&sized_void, memory_size, ptr);
KernAux_SizedVoid_init(&sized_void, ptr, memory_size);
return sized_void;
}
void KernAux_SizedVoid_init(
const KernAux_SizedVoid sized_void,
const size_t memory_size,
void *const ptr
void *const ptr,
const size_t memory_size
) {
KERNAUX_ASSERT(sized_void);
KERNAUX_ASSERT(memory_size);
KERNAUX_ASSERT(ptr);
KERNAUX_ASSERT(memory_size);
sized_void->memory_size = memory_size;
sized_void->ptr = ptr;