clean libtf
This commit is contained in:
parent
a0ad80a375
commit
c2c1add4a7
12 changed files with 0 additions and 509 deletions
|
@ -1,28 +0,0 @@
|
|||
ALL_BASE=mem str print list error str2 data str3 read mem2
|
||||
ALL_TOTAL=$(ALL_BASE) printf
|
||||
|
||||
COMP=cc -Wall -Werror -Wextra -g -I ../
|
||||
|
||||
help :
|
||||
@echo ""
|
||||
@echo "RULES: all $(ALL_TOTAL)"
|
||||
@echo ""
|
||||
|
||||
../libtf.a :
|
||||
make -C ../ fclean debug
|
||||
|
||||
|
||||
$(ALL_BASE) : ../libtf.a
|
||||
$(COMP) -o $@.out $@.c ../libtf.a
|
||||
|
||||
printf : ../libtf.a
|
||||
$(COMP) -o printf.out -Wno-error=format -Wformat=0 printf.c ../libtf.a
|
||||
|
||||
all : $(ALL_TOTAL)
|
||||
|
||||
clean :
|
||||
rm $(addsuffix .out,$(ALL_TOTAL))
|
||||
|
||||
fclean : clean
|
||||
|
||||
.PHONY : help ../libtf.a $(ALL_TOTAL)
|
|
@ -1,24 +0,0 @@
|
|||
#include "libtf.h"
|
||||
#include <stdio.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
char data1[] = "can't the future just wait?";
|
||||
data_cpy(data1 + 17, data1 + 22, 4);
|
||||
printf("can't the future wait wait? = %s\n", data1);
|
||||
|
||||
char data2[] = "0123456789";
|
||||
data_cpy(data2 + 3, data2 + 2, 7);
|
||||
printf("0122345678 = %s\n", data2);
|
||||
|
||||
char data3[] = "0123456789";
|
||||
data_cpy(data3 + 2, data3 + 3, 7);
|
||||
printf("0134567899 = %s\n", data3);
|
||||
|
||||
char data4[] = "0123456789";
|
||||
data_cpy(data4 + 2, data4 + 2, 7);
|
||||
printf("0123456789 = %s\n", data4);
|
||||
data_cpy(data4 + 2, data4 + 4, 0);
|
||||
printf("0123456789 = %s\n", data4);
|
||||
|
||||
}
|
|
@ -1,14 +0,0 @@
|
|||
#include "libtf.h"
|
||||
#include <stdio.h>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
printf("(null) = %s\n", err_get());
|
||||
printf("(null) = %s\n", err_get());
|
||||
err_remember("msg1");
|
||||
printf("msg1 = %s\n", err_get());
|
||||
printf("(null) = %s\n", err_get());
|
||||
err_remember("msg2");
|
||||
printf("msg2 = %s\n", err_get());
|
||||
printf("(null) = %s\n", err_get());
|
||||
}
|
|
@ -1,55 +0,0 @@
|
|||
#include "libtf.h"
|
||||
#include <stdio.h>
|
||||
|
||||
void err(t_const_string msg)
|
||||
{
|
||||
printf("error: %s\n", msg);
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
t_memclass mc = mem_newclass(&err);
|
||||
int tab[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
|
||||
|
||||
t_list list = list_createempty(mc);
|
||||
for (int i = 0; i < 5; i++)
|
||||
list_add(&err, &list, &tab[i]);
|
||||
for (int i = 5; i < 10; i++)
|
||||
list_revadd(&err, &list, &tab[i]);
|
||||
printf("9 8 7 6 5 0 1 2 3 4 = ");
|
||||
for (int i = 0; i < 10; i++)
|
||||
printf("%i ", *(int *)list_get(&err, &list, i));
|
||||
printf("\n10 = %i\n", list_getsize(&list));
|
||||
list_rotate(&list);
|
||||
printf("8 7 6 5 0 1 2 3 4 9 = ");
|
||||
for (int i = 0; i < 10; i++)
|
||||
printf("%i ", *(int *)list_get(&err, &list, i));
|
||||
list_revrotate(&list);
|
||||
printf("\n9 8 7 6 5 0 1 2 3 4 = ");
|
||||
for (int i = 0; i < 10; i++)
|
||||
printf("%i ", *(int *)list_get(&err, &list, i));
|
||||
|
||||
printf("\n\n2 index errors:\n");
|
||||
list_get(&err, &list, -1);
|
||||
list_get(&err, &list, 10);
|
||||
|
||||
printf("10 = %i\n", list_getsize(&list));
|
||||
printf("\n");
|
||||
for (int i = 9; i > 4; i--)
|
||||
{
|
||||
int value = *(int *)list_pop(&err, &list);
|
||||
printf("%i = %i\n", i, value);
|
||||
}
|
||||
printf("5 = %i\n", list_getsize(&list));
|
||||
for (int i = 4; i >= 0; i--)
|
||||
{
|
||||
int value = *(int *)list_revpop(&err, &list);
|
||||
printf("%i = %i\n", i, value);
|
||||
}
|
||||
printf("0 = %i\n", list_getsize(&list));
|
||||
printf("\n2 empty list errors:\n");
|
||||
list_pop(&err, &list);
|
||||
list_revpop(&err, &list);
|
||||
mem_freeall(mc);
|
||||
printf("\nMust have no leaks\n");
|
||||
}
|
|
@ -1,50 +0,0 @@
|
|||
/* ************************************************************************** */
|
||||
/* */
|
||||
/* ::: :::::::: */
|
||||
/* mem.c :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2023/12/18 11:23:58 by mcolonna #+# #+# */
|
||||
/* Updated: 2024/01/15 14:38:30 by marvin ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
#include "libtf.h"
|
||||
#include <stdio.h>
|
||||
|
||||
void err(const char *msg)
|
||||
{
|
||||
printf("error: %s\n", msg);
|
||||
}
|
||||
|
||||
int main(void)
|
||||
{
|
||||
t_memclass mc1, mc2, mc3;
|
||||
char *a, *b, *c;
|
||||
(void)(a); (void)(b); (void)(c);
|
||||
|
||||
mc1 = mem_newclass(&err);
|
||||
mem_freeall(mc1);
|
||||
mc2 = mem_newclass(&err);
|
||||
a = mem_alloc(&err, mc2, 2);
|
||||
mem_freeall(mc2);
|
||||
mc3 = mem_newclass(&err);
|
||||
a = mem_alloc(&err, mc3, 2);
|
||||
b = mem_alloc(&err, mc3, 2);
|
||||
c = mem_alloc(&err, mc3, 2);
|
||||
mem_free(b);
|
||||
b = mem_alloc(&err, mc3, 2);
|
||||
mem_free(b);
|
||||
mem_freeall(mc3);
|
||||
|
||||
t_memclass mc4;
|
||||
mc4 = mem_newclass(&err);
|
||||
a = mem_alloc(&err, mc4, 2);
|
||||
b = mem_alloc(&err, mc4, 2);
|
||||
c = mem_alloc(&err, mc4, 2);
|
||||
mem_free(a);
|
||||
mem_free(b);
|
||||
mem_free(c);
|
||||
mem_freeall(mc4);
|
||||
}
|
|
@ -1,44 +0,0 @@
|
|||
/* ************************************************************************** */
|
||||
/* */
|
||||
/* ::: :::::::: */
|
||||
/* mem2.c :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2023/12/18 11:23:58 by mcolonna #+# #+# */
|
||||
/* Updated: 2024/03/11 13:44:48 by mcolonna ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
#include "libtf.h"
|
||||
#include <stdio.h>
|
||||
|
||||
void err(const char *msg)
|
||||
{
|
||||
printf("error: %s\n", msg);
|
||||
}
|
||||
|
||||
int main(void)
|
||||
{
|
||||
t_memclass mc1, mc2, mc3;
|
||||
|
||||
mc1 = mem_newclass(err);
|
||||
mem_alloc(err, mc1, 4);
|
||||
mem_alloc(err, mc1, 6);
|
||||
mc2 = mem_subclass(err, mc1);
|
||||
mem_alloc(err, mc2, 8);
|
||||
mc3 = mem_subclass(err, mc2);
|
||||
mem_alloc(err, mc3, 8);
|
||||
mem_alloc(err, mc3, 5);
|
||||
mem_freeall(mc1);
|
||||
mc1 = mem_newclass(err);
|
||||
mem_alloc(err, mc1, 4);
|
||||
mem_alloc(err, mc1, 6);
|
||||
mc2 = mem_subclass(err, mc1);
|
||||
mem_alloc(err, mc2, 8);
|
||||
mc3 = mem_subclass(err, mc2);
|
||||
mem_alloc(err, mc3, 8);
|
||||
mem_alloc(err, mc3, 5);
|
||||
mem_freeall(mc3);
|
||||
mem_freeall(mc1);
|
||||
}
|
|
@ -1,7 +0,0 @@
|
|||
#include "libtf.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
print_str(NULL, 1, "Hello ");
|
||||
print_line(NULL, 1, "World!");
|
||||
}
|
|
@ -1,105 +0,0 @@
|
|||
/* ************************************************************************** */
|
||||
/* */
|
||||
/* ::: :::::::: */
|
||||
/* printf.c :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2023/10/16 17:55:23 by mcolonna #+# #+# */
|
||||
/* Updated: 2024/02/12 13:03:35 by mcolonna ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "libtf.h"
|
||||
|
||||
#define TEST(...)\
|
||||
test(printf(__VA_ARGS__)); \
|
||||
test(tf_printf(__VA_ARGS__)); \
|
||||
printf("---\n");
|
||||
|
||||
void title(const char *str)
|
||||
{
|
||||
fflush(stdout);
|
||||
while (str[0] == '\t')
|
||||
{
|
||||
printf(" ");
|
||||
str = str + 1;
|
||||
}
|
||||
printf("\e[3m %s \e[0m\n", str);
|
||||
fflush(stdout);
|
||||
}
|
||||
|
||||
void test(int r)
|
||||
{
|
||||
fflush(stdout);
|
||||
printf(" (%d)\n", r);
|
||||
fflush(stdout);
|
||||
}
|
||||
|
||||
int main(void)
|
||||
{
|
||||
int p;
|
||||
void* n = NULL;
|
||||
|
||||
title("Basic strings");
|
||||
TEST("Hello world!");
|
||||
TEST("he");
|
||||
TEST("YEYEYEYEYEYEEY");
|
||||
|
||||
title("All conversions");
|
||||
title("\t%c");
|
||||
TEST("%c", '4');
|
||||
TEST("%c", '#');
|
||||
TEST("%c", '\0');
|
||||
title("\t%s");
|
||||
TEST("%s", "42");
|
||||
TEST("%s", "");
|
||||
TEST("%s", (char *)n);
|
||||
title("\t%p");
|
||||
TEST("%p", &p);
|
||||
TEST("%p", n);
|
||||
TEST("%p", n - 42);
|
||||
title("\t%d");
|
||||
TEST("%d", 42);
|
||||
TEST("%d", 393820202);
|
||||
TEST("%d", 0);
|
||||
TEST("%d", -42);
|
||||
TEST("%d", -3838383);
|
||||
title("\t%i");
|
||||
TEST("%i", 42);
|
||||
TEST("%i", 393820202);
|
||||
TEST("%i", 0);
|
||||
TEST("%i", -42);
|
||||
TEST("%i", -3838383);
|
||||
title("\t%u");
|
||||
TEST("%u", 42);
|
||||
TEST("%u", 0);
|
||||
TEST("%u", 3893838);
|
||||
title("\t%x");
|
||||
TEST("%x", 42);
|
||||
TEST("%x", 0);
|
||||
TEST("%x", 3893838);
|
||||
title("\t%X");
|
||||
TEST("%X", 42);
|
||||
TEST("%X", 0);
|
||||
TEST("%X", 3893838);
|
||||
title("\t%%");
|
||||
TEST("%%");
|
||||
|
||||
title("Combinations");
|
||||
TEST("The %d %s!", 42, "School");
|
||||
TEST("%d + %d + %d", 1, 1, 3);
|
||||
TEST("%c%c%c%c%c%c%c%c%c%c%c%c%c%c",
|
||||
'T', 'h', 'e', ' ',
|
||||
'4', '2', ' ',
|
||||
'S', 'c', 'h', 'o', 'o', 'l', '!');
|
||||
TEST("%c%c = %s = %d = %i", '4', '2', "42", 42, 42);
|
||||
TEST("%p / %p", &p, n);
|
||||
TEST("%i = %u = %d = %X = %x", 42, 42, 42, 42, 42);
|
||||
TEST("%i = %d", -42, -42);
|
||||
TEST("%d%% < %d%%", 99, 100);
|
||||
TEST("%c %s %p %d %i %u %x %X %%", '4', "42", n + 42, 42, 42, 42, 42, 42);
|
||||
TEST("%c %s %p %d %i %u %x %X %%", '\0', (char *)n, n, 0, 0, 0, 0, 0);
|
||||
}
|
|
@ -1,33 +0,0 @@
|
|||
#include "libtf.h"
|
||||
#define LINE tf_printf("Line: \"%s\"\n", read_line(err, mc, fd))
|
||||
|
||||
void err(t_const_string msg)
|
||||
{
|
||||
tf_printf("[error: %s]\n", msg);
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
t_memclass mc = mem_newclass(err);
|
||||
int fd;
|
||||
|
||||
tf_printf("2 bad value errors:\n");
|
||||
fd = -2;
|
||||
LINE;
|
||||
fd = 32767;
|
||||
LINE;
|
||||
|
||||
tf_printf("1 file error:\n");
|
||||
fd = 100;
|
||||
LINE;
|
||||
|
||||
tf_printf("Copy what you say for 5 lines:\n");
|
||||
fd = 0;
|
||||
LINE;
|
||||
LINE;
|
||||
LINE;
|
||||
LINE;
|
||||
LINE;
|
||||
|
||||
mem_freeall(mc);
|
||||
}
|
|
@ -1,86 +0,0 @@
|
|||
#include "libtf.h"
|
||||
#include <stdio.h>
|
||||
|
||||
void err(t_const_string msg)
|
||||
{
|
||||
printf("error: %s\n", msg);
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
t_memclass mc = mem_newclass(&err);
|
||||
|
||||
printf("Must spell 'Hello world!':\n");
|
||||
t_const_string str = "Hello world!";
|
||||
t_stream streaaam;
|
||||
streamstr_init(&streaaam, str);
|
||||
t_stream *stream = &streaaam;
|
||||
while(stream_read(stream))
|
||||
{
|
||||
printf("read: %c\n", stream_read(stream));
|
||||
printf("pop: %c\n", stream_pop(stream));
|
||||
}
|
||||
printf("\nChar\tw or 2?\tDigit?\tUpper?\tLower?\tAlpha?\tAlphanum?\n");
|
||||
const char chars[] = {'a','w','W','2','d','{','\0'};
|
||||
for (int i = 0; i < 7; i++)
|
||||
printf("%c\t%i\t%i\t%i\t%i\t%i\t%i\n",
|
||||
chars[i],
|
||||
char_isin(chars[i], "w2"),
|
||||
char_isdigit(chars[i]),
|
||||
char_isupper(chars[i]),
|
||||
char_islower(chars[i]),
|
||||
char_isalpha(chars[i]),
|
||||
char_isalphanum(chars[i])
|
||||
);
|
||||
|
||||
printf("\nMust say nothing:\n");
|
||||
stream = streamstr_alloc(&err, mc, " 98 2 ,,. 655yolo");
|
||||
stream_skip(stream, " .,");
|
||||
if (stream_readuint(&err, stream) != 98)
|
||||
err("damn 1");
|
||||
stream_skip(stream, " .,");
|
||||
if (stream_readuint(&err, stream) != 2)
|
||||
err("damn 2");
|
||||
stream_skip(stream, " .,");
|
||||
if (stream_readuint(&err, stream) != 655)
|
||||
err("damn");
|
||||
printf("\nMust get 2 value errors:\n");
|
||||
stream_readuint(&err, stream);
|
||||
stream = streamstr_alloc(&err, mc, "2878979367836578265278276537");
|
||||
stream_readuint(&err, stream);
|
||||
|
||||
printf("\nstr to int:\n");
|
||||
printf("'%s' = %i\n", "23", str_touint(&err, "23"));
|
||||
printf("'%s' = %i\n", "0", str_touint(&err, "0"));
|
||||
printf("bad value = ");
|
||||
str_touint(&err, "-42");
|
||||
printf("bad value = ");
|
||||
str_touint(&err, " 17");
|
||||
printf("bad value = ");
|
||||
str_touint(&err, "17 ");
|
||||
printf("bad value = ");
|
||||
str_touint(&err, "");
|
||||
printf("bad value = ");
|
||||
str_touint(&err, "17b");
|
||||
printf("bad value = ");
|
||||
str_touint(&err, "b17");
|
||||
printf("bad value = ");
|
||||
str_touint(&err, "+42");
|
||||
printf("'%s' = %i\n", "23", str_toint(&err, "23"));
|
||||
printf("'%s' = %i\n", "0", str_toint(&err, "0"));
|
||||
printf("'%s' = %i\n", "-42", str_toint(&err, "-42"));
|
||||
printf("bad value = ");
|
||||
str_toint(&err, " 17");
|
||||
printf("bad value = ");
|
||||
str_toint(&err, "17 ");
|
||||
printf("bad value = ");
|
||||
str_toint(&err, "");
|
||||
printf("bad value = ");
|
||||
str_toint(&err, "17b");
|
||||
printf("bad value = ");
|
||||
str_toint(&err, "b17");
|
||||
printf("'%s' = %i\n", "+42", str_toint(&err, "+42"));
|
||||
|
||||
printf("\nMust have no leak with valgrind.\n");
|
||||
mem_freeall(mc);
|
||||
}
|
|
@ -1,28 +0,0 @@
|
|||
#include "libtf.h"
|
||||
#include <stdio.h>
|
||||
|
||||
void err(t_const_string msg)
|
||||
{
|
||||
printf("<error %s>\n", msg);
|
||||
}
|
||||
|
||||
int main(void)
|
||||
{
|
||||
t_memclass mc = mem_newclass(&err);
|
||||
t_string *arr;
|
||||
|
||||
arr = str_split(err, mc, " Hello \nworld\n \n ! ", "\n ");
|
||||
printf("'Hello' = '%s'\n", arr[0]);
|
||||
printf("'world' = '%s'\n", arr[1]);
|
||||
printf("'!' = '%s'\n", arr[2]);
|
||||
printf("'(null)' = '%s'\n", arr[3]);
|
||||
arr = str_split(err, mc, "\n\n\n\n ", "\n ");
|
||||
printf("'(null)' = '%s'\n", arr[0]);
|
||||
arr = str_split(err, mc, "", "\n ");
|
||||
printf("'(null)' = '%s'\n", arr[0]);
|
||||
arr = str_split(err, mc, "yo", "\n ");
|
||||
printf("'yo' = '%s'\n", arr[0]);
|
||||
printf("'(null)' = '%s'\n", arr[1]);
|
||||
|
||||
mem_freeall(mc);
|
||||
}
|
|
@ -1,35 +0,0 @@
|
|||
#include "libtf.h"
|
||||
#include <limits.h>
|
||||
#include <stdio.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
t_memclass mc = mem_newclass(err_remember);
|
||||
|
||||
char *yo = "Hello ";
|
||||
char *we = "world!";
|
||||
printf("%s\n", str_join(err_remember, mc, yo, we));
|
||||
|
||||
printf("%i = %s\n", 0, str_inttostr(err_remember, mc, 0));
|
||||
printf("%i = %s\n", 7, str_inttostr(err_remember, mc, 7));
|
||||
printf("%i = %s\n", 3892, str_inttostr(err_remember, mc, 3892));
|
||||
printf("%i = %s\n", -1, str_inttostr(err_remember, mc, -1));
|
||||
printf("%i = %s\n", -90430, str_inttostr(err_remember, mc, -90430));
|
||||
printf("%i = %s\n", INT_MAX, str_inttostr(err_remember, mc, INT_MAX));
|
||||
printf("%i = %s\n", INT_MIN, str_inttostr(err_remember, mc, INT_MIN));
|
||||
|
||||
printf("%u = %s\n", 0, str_uinttostr(err_remember, mc, 0));
|
||||
printf("%u = %s\n", 7, str_uinttostr(err_remember, mc, 7));
|
||||
printf("%u = %s\n", 3892, str_uinttostr(err_remember, mc, 3892));
|
||||
printf("%u = %s\n", INT_MAX, str_uinttostr(err_remember, mc, INT_MAX));
|
||||
printf("%u = %s\n", UINT_MAX, str_uinttostr(err_remember, mc, UINT_MAX));
|
||||
printf("%i = %i\n", 1, str_eq("", ""));
|
||||
printf("%i = %i\n", 0, str_eq("one", ""));
|
||||
printf("%i = %i\n", 0, str_eq("", "two"));
|
||||
printf("%i = %i\n", 0, str_eq("one", "two"));
|
||||
printf("%i = %i\n", 1, str_eq("one", "one"));
|
||||
printf("%i = %i\n", 0, str_eq("onetwo", "one"));
|
||||
printf("%i = %i\n", 0, str_eq("one", "onetwo"));
|
||||
|
||||
mem_freeall(mc);
|
||||
}
|
Loading…
Add table
Reference in a new issue