Update tests
This commit is contained in:
parent
804769d85c
commit
f78d7f7ed9
@ -51,6 +51,8 @@ tests: $(addprefix $(BUILD_PATH)/global-,$(notdir $(basename $(wildcard ./src/gl
|
|||||||
|
|
||||||
########################################################################################################################
|
########################################################################################################################
|
||||||
|
|
||||||
|
CFLAGS:=$(CFLAGS) ../modules/libunic/bin/libunic.a
|
||||||
|
|
||||||
$(BUILD_PATH)/obj/%.o: ./src/%.c | $(BUILD_PATH)/obj/
|
$(BUILD_PATH)/obj/%.o: ./src/%.c | $(BUILD_PATH)/obj/
|
||||||
$(CC) $^ -o $@ $(CFLAGS)
|
$(CC) $^ -o $@ $(CFLAGS)
|
||||||
|
|
||||||
@ -72,7 +74,7 @@ $(BUILD_PATH)/obj/global-%.o: ./src/global/src/%.c | $(BUILD_PATH)/obj/
|
|||||||
$(BUILD_PATH)/array-%: ./src/array/%.c $(OBJECTS_ARRAY) | $(BUILD_PATH)/
|
$(BUILD_PATH)/array-%: ./src/array/%.c $(OBJECTS_ARRAY) | $(BUILD_PATH)/
|
||||||
$(CC) $^ -o $@ $(CFLAGS) -g3 -Wall
|
$(CC) $^ -o $@ $(CFLAGS) -g3 -Wall
|
||||||
$(BUILD_PATH)/string-%: ./src/string/%.c $(OBJECTS_STRING) | $(BUILD_PATH)/
|
$(BUILD_PATH)/string-%: ./src/string/%.c $(OBJECTS_STRING) | $(BUILD_PATH)/
|
||||||
$(CC) $^ -o $@ ../modules/libunic/bin/libunic.a $(CFLAGS) -g3 -Wall
|
$(CC) $^ -o $@ $(CFLAGS) -g3 -Wall
|
||||||
$(BUILD_PATH)/list-%: ./src/list/%.c $(OBJECTS_LIST) | $(BUILD_PATH)/
|
$(BUILD_PATH)/list-%: ./src/list/%.c $(OBJECTS_LIST) | $(BUILD_PATH)/
|
||||||
$(CC) $^ -o $@ $(CFLAGS) -g3 -Wall
|
$(CC) $^ -o $@ $(CFLAGS) -g3 -Wall
|
||||||
$(BUILD_PATH)/map-%: ./src/map/%.c $(OBJECTS_MAP) | $(BUILD_PATH)/
|
$(BUILD_PATH)/map-%: ./src/map/%.c $(OBJECTS_MAP) | $(BUILD_PATH)/
|
||||||
@ -82,7 +84,7 @@ $(BUILD_PATH)/set-%: ./src/set/%.c $(OBJECTS_SET) | $(BUILD_PATH)/
|
|||||||
$(BUILD_PATH)/dict-%: ./src/dict/%.c $(OBJECTS_DICT) | $(BUILD_PATH)/
|
$(BUILD_PATH)/dict-%: ./src/dict/%.c $(OBJECTS_DICT) | $(BUILD_PATH)/
|
||||||
$(CC) $^ -o $@ $(CFLAGS) -g3 -Wall
|
$(CC) $^ -o $@ $(CFLAGS) -g3 -Wall
|
||||||
$(BUILD_PATH)/global-%: ./src/global/%.c $(OBJECTS_GLOBAL) | $(BUILD_PATH)/
|
$(BUILD_PATH)/global-%: ./src/global/%.c $(OBJECTS_GLOBAL) | $(BUILD_PATH)/
|
||||||
$(CC) $^ ../bin/debug/libcdsb.a ../modules/libunic/bin/libunic.a -o $@ $(CFLAGS) -g3 -Wall
|
$(CC) $^ ../bin/debug/libcdsb.a -o $@ $(CFLAGS) -g3 -Wall
|
||||||
|
|
||||||
########################################################################################################################
|
########################################################################################################################
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
/* Copyright © 2022 Gregory Lirent */
|
/* Copyright © 2022 Gregory Lirent */
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "../../../include/extra/vtype.h"
|
#include "../../../include/vtype.h"
|
||||||
#include "../../../include/array.h"
|
#include "../../../include/array.h"
|
||||||
|
|
||||||
#include "../../include/random.h"
|
#include "../../include/random.h"
|
||||||
|
@ -2,16 +2,14 @@
|
|||||||
/* Copyright © 2022 Gregory Lirent */
|
/* Copyright © 2022 Gregory Lirent */
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "../../../../include/extra/vtype.h"
|
#include "../../../../include/vtype.h"
|
||||||
#include "../../../include/random.h"
|
#include "../../../include/random.h"
|
||||||
|
|
||||||
vtype_string* string_duplicate(const vtype_string* x) { return 0; }
|
|
||||||
vtype_list* list_duplicate (const vtype_list* x) { return 0; }
|
vtype_list* list_duplicate (const vtype_list* x) { return 0; }
|
||||||
vtype_map* map_duplicate (const vtype_map* x) { return 0; }
|
vtype_map* map_duplicate (const vtype_map* x) { return 0; }
|
||||||
vtype_set* vset_duplicate (const vtype_set* x) { return 0; }
|
vtype_set* vset_duplicate (const vtype_set* x) { return 0; }
|
||||||
vtype_dict* dict_duplicate (const vtype_dict* x) { return 0; }
|
vtype_dict* dict_duplicate (const vtype_dict* x) { return 0; }
|
||||||
|
|
||||||
void string_free(vtype_string* x) {}
|
|
||||||
void list_free (vtype_list* x) {}
|
void list_free (vtype_list* x) {}
|
||||||
void map_free (vtype_map* x) {}
|
void map_free (vtype_map* x) {}
|
||||||
void vset_free (vtype_set* x) {}
|
void vset_free (vtype_set* x) {}
|
||||||
@ -29,7 +27,6 @@ hash_t map_hash (const vtype_map* s) { return 0; }
|
|||||||
hash_t vset_hash (const vtype_set* s) { return 0; }
|
hash_t vset_hash (const vtype_set* s) { return 0; }
|
||||||
hash_t dict_hash (const vtype_dict* s) { return 0; }
|
hash_t dict_hash (const vtype_dict* s) { return 0; }
|
||||||
|
|
||||||
void string_copy_init(vtype_string* x, const vtype_string* s) { memset(x, 0, sizeof(*x)); }
|
|
||||||
void list_copy_init (vtype_list* x, const vtype_list* s) { memset(x, 0, sizeof(*x)); }
|
void list_copy_init (vtype_list* x, const vtype_list* s) { memset(x, 0, sizeof(*x)); }
|
||||||
void map_copy_init (vtype_map* x, const vtype_map* s) { memset(x, 0, sizeof(*x)); }
|
void map_copy_init (vtype_map* x, const vtype_map* s) { memset(x, 0, sizeof(*x)); }
|
||||||
void vset_copy_init (vtype_set* x, const vtype_set* s) { memset(x, 0, sizeof(*x)); }
|
void vset_copy_init (vtype_set* x, const vtype_set* s) { memset(x, 0, sizeof(*x)); }
|
||||||
|
@ -31,7 +31,7 @@ void array_push_random(arr_t* x, _Bool silent, unsigned int hpos) {
|
|||||||
printf("\e[%dG\e[36mTry to push value to back of the array:\e[m\n", hpos+1);
|
printf("\e[%dG\e[36mTry to push value to back of the array:\e[m\n", hpos+1);
|
||||||
}
|
}
|
||||||
|
|
||||||
r = libcdsb_array_push(x, _.v.value, _.v.type) >= 0;
|
r = libcdsb_array_insert(x, _.v.value, _.v.type) >= 0;
|
||||||
} else {
|
} else {
|
||||||
ssize_t i = array_size(x);
|
ssize_t i = array_size(x);
|
||||||
|
|
||||||
|
@ -4,13 +4,11 @@
|
|||||||
#include "../../../../src/__internal/include.h"
|
#include "../../../../src/__internal/include.h"
|
||||||
#include "../../../include/random.h"
|
#include "../../../include/random.h"
|
||||||
|
|
||||||
vtype_string* string_duplicate(const vtype_string* x) { return 0; }
|
|
||||||
vtype_array* array_duplicate (const vtype_array* x) { return 0; }
|
vtype_array* array_duplicate (const vtype_array* x) { return 0; }
|
||||||
vtype_list* list_duplicate (const vtype_list* x) { return 0; }
|
vtype_list* list_duplicate (const vtype_list* x) { return 0; }
|
||||||
vtype_map* map_duplicate (const vtype_map* x) { return 0; }
|
vtype_map* map_duplicate (const vtype_map* x) { return 0; }
|
||||||
vtype_set* vset_duplicate (const vtype_set* x) { return 0; }
|
vtype_set* vset_duplicate (const vtype_set* x) { return 0; }
|
||||||
|
|
||||||
void string_free(vtype_string* x) {}
|
|
||||||
void array_free (vtype_array* x) {}
|
void array_free (vtype_array* x) {}
|
||||||
void list_free (vtype_list* x) {}
|
void list_free (vtype_list* x) {}
|
||||||
void map_free (vtype_map* x) {}
|
void map_free (vtype_map* x) {}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/* This software is licensed by the MIT License, see LICENSE file */
|
/* This software is licensed by the MIT License, see LICENSE file */
|
||||||
/* Copyright © 2022 Gregory Lirent */
|
/* Copyright © 2022 Gregory Lirent */
|
||||||
|
|
||||||
#include "../../../include/extra/string.h"
|
#include "../../../include/string.h"
|
||||||
#include "../../../include/array.h"
|
#include "../../../include/array.h"
|
||||||
#include "../../../include/list.h"
|
#include "../../../include/list.h"
|
||||||
#include "../../../include/set.h"
|
#include "../../../include/set.h"
|
||||||
|
@ -80,30 +80,34 @@ static arr_t random_array(bool embd) {
|
|||||||
size_t n = random_uint16()%((!embd)?MAX_ELEMENTS:100);
|
size_t n = random_uint16()%((!embd)?MAX_ELEMENTS:100);
|
||||||
value_t v = (!embd) ? random_value2() : real_random_value(1);
|
value_t v = (!embd) ? random_value2() : real_random_value(1);
|
||||||
|
|
||||||
void (*callback)(void*);
|
|
||||||
|
|
||||||
switch (v.type) {
|
|
||||||
default: callback = nullptr; break;
|
|
||||||
case VTYPE_STRING: callback = (void*)string_free; break;
|
|
||||||
case VTYPE_ARRAY: callback = (void*)array_free; break;
|
|
||||||
case VTYPE_LIST: callback = (void*)list_free; break;
|
|
||||||
case VTYPE_MAP: callback = (void*)map_free; break;
|
|
||||||
case VTYPE_SET: callback = (void*)vset_free; break;
|
|
||||||
case VTYPE_DICT: callback = (void*)dict_free; break;
|
|
||||||
}
|
|
||||||
|
|
||||||
array_init(&x, v.type);
|
array_init(&x, v.type);
|
||||||
|
|
||||||
while(n--) {
|
while(n--) {
|
||||||
|
|
||||||
libcdsb_array_push(&x, v.value, v.type);
|
libcdsb_array_insert(&x, v.value, v.type);
|
||||||
|
|
||||||
if (callback) callback(v.value);
|
switch (v.type) {
|
||||||
|
default: break;
|
||||||
|
case VTYPE_STRING: string_free((void*)v.value); break;
|
||||||
|
case VTYPE_ARRAY: array_free((void*)v.value); break;
|
||||||
|
case VTYPE_LIST: list_free((void*)v.value); break;
|
||||||
|
case VTYPE_MAP: map_free((void*)v.value); break;
|
||||||
|
case VTYPE_SET: vset_free((void*)v.value); break;
|
||||||
|
case VTYPE_DICT: dict_free((void*)v.value); break;
|
||||||
|
}
|
||||||
|
|
||||||
v = random_value_by_type(v.type, 1);
|
v = random_value_by_type(v.type, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (callback) callback(v.value);
|
switch (v.type) {
|
||||||
|
default: break;
|
||||||
|
case VTYPE_STRING: string_free((void*)v.value); break;
|
||||||
|
case VTYPE_ARRAY: array_free((void*)v.value); break;
|
||||||
|
case VTYPE_LIST: list_free((void*)v.value); break;
|
||||||
|
case VTYPE_MAP: map_free((void*)v.value); break;
|
||||||
|
case VTYPE_SET: vset_free((void*)v.value); break;
|
||||||
|
case VTYPE_DICT: dict_free((void*)v.value); break;
|
||||||
|
}
|
||||||
|
|
||||||
return x;
|
return x;
|
||||||
}
|
}
|
||||||
@ -113,30 +117,35 @@ static set_t random_set(bool embd) {
|
|||||||
size_t n = random_uint16()%((!embd)?MAX_ELEMENTS:100);
|
size_t n = random_uint16()%((!embd)?MAX_ELEMENTS:100);
|
||||||
value_t v = (!embd) ? random_value2() : real_random_value(1);
|
value_t v = (!embd) ? random_value2() : real_random_value(1);
|
||||||
|
|
||||||
void (*callback)(void*);
|
|
||||||
|
|
||||||
switch (v.type) {
|
|
||||||
default: callback = nullptr; break;
|
|
||||||
case VTYPE_STRING: callback = (void*)string_free; break;
|
|
||||||
case VTYPE_ARRAY: callback = (void*)array_free; break;
|
|
||||||
case VTYPE_LIST: callback = (void*)list_free; break;
|
|
||||||
case VTYPE_MAP: callback = (void*)map_free; break;
|
|
||||||
case VTYPE_SET: callback = (void*)vset_free; break;
|
|
||||||
case VTYPE_DICT: callback = (void*)dict_free; break;
|
|
||||||
}
|
|
||||||
|
|
||||||
vset_init(&x, v.type);
|
vset_init(&x, v.type);
|
||||||
|
|
||||||
while(n--) {
|
while(n--) {
|
||||||
|
|
||||||
libcdsb_vset_insert(&x, v.value, v.type);
|
libcdsb_vset_insert(&x, v.value, v.type);
|
||||||
|
|
||||||
if (callback) callback(v.value);
|
switch (v.type) {
|
||||||
|
default: break;
|
||||||
|
case VTYPE_STRING: string_free((void*)v.value); break;
|
||||||
|
case VTYPE_ARRAY: array_free((void*)v.value); break;
|
||||||
|
case VTYPE_LIST: list_free((void*)v.value); break;
|
||||||
|
case VTYPE_MAP: map_free((void*)v.value); break;
|
||||||
|
case VTYPE_SET: vset_free((void*)v.value); break;
|
||||||
|
case VTYPE_DICT: dict_free((void*)v.value); break;
|
||||||
|
}
|
||||||
|
|
||||||
v = random_value_by_type(v.type, 1);
|
v = random_value_by_type(v.type, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (callback) callback(v.value);
|
switch (v.type) {
|
||||||
|
default: break;
|
||||||
|
case VTYPE_STRING: string_free((void*)v.value); break;
|
||||||
|
case VTYPE_ARRAY: array_free((void*)v.value); break;
|
||||||
|
case VTYPE_LIST: list_free((void*)v.value); break;
|
||||||
|
case VTYPE_MAP: map_free((void*)v.value); break;
|
||||||
|
case VTYPE_SET: vset_free((void*)v.value); break;
|
||||||
|
case VTYPE_DICT: dict_free((void*)v.value); break;
|
||||||
|
}
|
||||||
|
|
||||||
return x;
|
return x;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -149,7 +158,7 @@ static list_t random_list(bool embd) {
|
|||||||
|
|
||||||
while(n--) {
|
while(n--) {
|
||||||
v = (!embd) ? random_value2() : real_random_value(1);
|
v = (!embd) ? random_value2() : real_random_value(1);
|
||||||
libcdsb_list_update(&x, -1, v.value, v.type, 1);
|
libcdsb_list_insert(&x, -1, v.value, v.type, 1);
|
||||||
|
|
||||||
switch (v.type) {
|
switch (v.type) {
|
||||||
default: break;
|
default: break;
|
||||||
@ -170,18 +179,6 @@ static map_t random_map(bool embd) {
|
|||||||
size_t n = random_uint16()%((!embd)?MAX_ELEMENTS:100);
|
size_t n = random_uint16()%((!embd)?MAX_ELEMENTS:100);
|
||||||
value_t k = (!embd) ? random_value2() : real_random_value(1);
|
value_t k = (!embd) ? random_value2() : real_random_value(1);
|
||||||
|
|
||||||
void (*callback)(void*);
|
|
||||||
|
|
||||||
switch (k.type) {
|
|
||||||
default: callback = nullptr; break;
|
|
||||||
case VTYPE_STRING: callback = (void*)string_free; break;
|
|
||||||
case VTYPE_ARRAY: callback = (void*)array_free; break;
|
|
||||||
case VTYPE_LIST: callback = (void*)list_free; break;
|
|
||||||
case VTYPE_MAP: callback = (void*)map_free; break;
|
|
||||||
case VTYPE_SET: callback = (void*)vset_free; break;
|
|
||||||
case VTYPE_DICT: callback = (void*)dict_free; break;
|
|
||||||
}
|
|
||||||
|
|
||||||
map_init(&x, k.type);
|
map_init(&x, k.type);
|
||||||
|
|
||||||
while(n--) {
|
while(n--) {
|
||||||
@ -189,7 +186,15 @@ static map_t random_map(bool embd) {
|
|||||||
|
|
||||||
libcdsb_map_update(&x, k.value, k.type, v.value, v.type);
|
libcdsb_map_update(&x, k.value, k.type, v.value, v.type);
|
||||||
|
|
||||||
if (callback) callback(k.value);
|
switch (k.type) {
|
||||||
|
default: break;
|
||||||
|
case VTYPE_STRING: string_free((void*)k.value); break;
|
||||||
|
case VTYPE_ARRAY: array_free((void*)k.value); break;
|
||||||
|
case VTYPE_LIST: list_free((void*)k.value); break;
|
||||||
|
case VTYPE_MAP: map_free((void*)k.value); break;
|
||||||
|
case VTYPE_SET: vset_free((void*)k.value); break;
|
||||||
|
case VTYPE_DICT: dict_free((void*)k.value); break;
|
||||||
|
}
|
||||||
|
|
||||||
switch (v.type) {
|
switch (v.type) {
|
||||||
default: break;
|
default: break;
|
||||||
@ -204,7 +209,16 @@ static map_t random_map(bool embd) {
|
|||||||
k = random_value_by_type(k.type, 1);
|
k = random_value_by_type(k.type, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (callback) callback(k.value);
|
switch (k.type) {
|
||||||
|
default: break;
|
||||||
|
case VTYPE_STRING: string_free((void*)k.value); break;
|
||||||
|
case VTYPE_ARRAY: array_free((void*)k.value); break;
|
||||||
|
case VTYPE_LIST: list_free((void*)k.value); break;
|
||||||
|
case VTYPE_MAP: map_free((void*)k.value); break;
|
||||||
|
case VTYPE_SET: vset_free((void*)k.value); break;
|
||||||
|
case VTYPE_DICT: dict_free((void*)k.value); break;
|
||||||
|
}
|
||||||
|
|
||||||
return x;
|
return x;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -4,13 +4,11 @@
|
|||||||
#include "../../../../src/__internal/include.h"
|
#include "../../../../src/__internal/include.h"
|
||||||
#include "../../../include/random.h"
|
#include "../../../include/random.h"
|
||||||
|
|
||||||
vtype_string* string_duplicate(const vtype_string* x) { return 0; }
|
|
||||||
vtype_array* array_duplicate (const vtype_array* x) { return 0; }
|
vtype_array* array_duplicate (const vtype_array* x) { return 0; }
|
||||||
vtype_map* map_duplicate (const vtype_map* x) { return 0; }
|
vtype_map* map_duplicate (const vtype_map* x) { return 0; }
|
||||||
vtype_set* vset_duplicate (const vtype_set* x) { return 0; }
|
vtype_set* vset_duplicate (const vtype_set* x) { return 0; }
|
||||||
vtype_dict* dict_duplicate (const vtype_dict* x) { return 0; }
|
vtype_dict* dict_duplicate (const vtype_dict* x) { return 0; }
|
||||||
|
|
||||||
void string_free(vtype_string* x) {}
|
|
||||||
void array_free (vtype_array* x) {}
|
void array_free (vtype_array* x) {}
|
||||||
void map_free (vtype_map* x) {}
|
void map_free (vtype_map* x) {}
|
||||||
void vset_free (vtype_set* x) {}
|
void vset_free (vtype_set* x) {}
|
||||||
|
@ -26,12 +26,12 @@ void list_push_random(list_t* x, _Bool silent, unsigned int hpos) {
|
|||||||
if (!silent) {
|
if (!silent) {
|
||||||
printf("\e[%dG\e[36mTry to push value to back of the list:\e[m\n", hpos+1);
|
printf("\e[%dG\e[36mTry to push value to back of the list:\e[m\n", hpos+1);
|
||||||
}
|
}
|
||||||
r = libcdsb_list_update(x, -1, v.value, v.type, 1);
|
r = libcdsb_list_insert(x, -1, v.value, v.type, 1);
|
||||||
} else if (random_boolean()) {
|
} else if (random_boolean()) {
|
||||||
if (!silent) {
|
if (!silent) {
|
||||||
printf("\e[%dG\e[36mTry to push value to front of the list:\e[m\n", hpos+1);
|
printf("\e[%dG\e[36mTry to push value to front of the list:\e[m\n", hpos+1);
|
||||||
}
|
}
|
||||||
r = libcdsb_list_update(x, -1, v.value, v.type, 1);
|
r = libcdsb_list_insert(x, -1, v.value, v.type, 1);
|
||||||
} else {
|
} else {
|
||||||
ssize_t i = list_size(x);
|
ssize_t i = list_size(x);
|
||||||
i = random_uint64()% (i ? i : 1);
|
i = random_uint64()% (i ? i : 1);
|
||||||
@ -41,7 +41,7 @@ void list_push_random(list_t* x, _Bool silent, unsigned int hpos) {
|
|||||||
printf("\e[%dG\e[36mTry to change value with index \e[32;1m%ld\e[36m in the list:\e[m\n", hpos+1, i);
|
printf("\e[%dG\e[36mTry to change value with index \e[32;1m%ld\e[36m in the list:\e[m\n", hpos+1, i);
|
||||||
}
|
}
|
||||||
|
|
||||||
r = libcdsb_list_update(x, i, v.value, v.type, 0);
|
r = libcdsb_list_insert(x, i, v.value, v.type, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!silent) {
|
if (!silent) {
|
||||||
|
@ -4,13 +4,11 @@
|
|||||||
#include "../../../../src/__internal/include.h"
|
#include "../../../../src/__internal/include.h"
|
||||||
#include "../../../include/random.h"
|
#include "../../../include/random.h"
|
||||||
|
|
||||||
vtype_string* string_duplicate(const vtype_string* x) { return 0; }
|
|
||||||
vtype_array* array_duplicate (const vtype_array* x) { return 0; }
|
vtype_array* array_duplicate (const vtype_array* x) { return 0; }
|
||||||
vtype_list* list_duplicate (const vtype_list* x) { return 0; }
|
vtype_list* list_duplicate (const vtype_list* x) { return 0; }
|
||||||
vtype_set* vset_duplicate (const vtype_set* x) { return 0; }
|
vtype_set* vset_duplicate (const vtype_set* x) { return 0; }
|
||||||
vtype_dict* dict_duplicate (const vtype_dict* x) { return 0; }
|
vtype_dict* dict_duplicate (const vtype_dict* x) { return 0; }
|
||||||
|
|
||||||
void string_free(vtype_string* x) {}
|
|
||||||
void array_free (vtype_array* x) {}
|
void array_free (vtype_array* x) {}
|
||||||
void list_free (vtype_list* x) {}
|
void list_free (vtype_list* x) {}
|
||||||
void vset_free (vtype_set* x) {}
|
void vset_free (vtype_set* x) {}
|
||||||
|
@ -4,13 +4,11 @@
|
|||||||
#include "../../../../src/__internal/include.h"
|
#include "../../../../src/__internal/include.h"
|
||||||
#include "../../../include/random.h"
|
#include "../../../include/random.h"
|
||||||
|
|
||||||
vtype_string* string_duplicate(const vtype_string* x) { return 0; }
|
|
||||||
vtype_array* array_duplicate (const vtype_array* x) { return 0; }
|
vtype_array* array_duplicate (const vtype_array* x) { return 0; }
|
||||||
vtype_list* list_duplicate (const vtype_list* x) { return 0; }
|
vtype_list* list_duplicate (const vtype_list* x) { return 0; }
|
||||||
vtype_map* map_duplicate (const vtype_map* x) { return 0; }
|
vtype_map* map_duplicate (const vtype_map* x) { return 0; }
|
||||||
vtype_dict* dict_duplicate (const vtype_dict* x) { return 0; }
|
vtype_dict* dict_duplicate (const vtype_dict* x) { return 0; }
|
||||||
|
|
||||||
void string_free(vtype_string* x) {}
|
|
||||||
void array_free (vtype_array* x) {}
|
void array_free (vtype_array* x) {}
|
||||||
void list_free (vtype_list* x) {}
|
void list_free (vtype_list* x) {}
|
||||||
void map_free (vtype_map* x) {}
|
void map_free (vtype_map* x) {}
|
||||||
|
Loading…
Reference in New Issue
Block a user