1
1
mirror of https://github.com/theoludwig/libcproject.git synced 2025-05-21 23:21:15 +02:00
Commit Graph

70 Commits

Author SHA1 Message Date
72645da4b2 perf: mutate strings instead of copy when possible
BREAKING CHANGE: Most of string functions mutates the string instead of copying now.
This allows better performance when copy is not needed.
It also allows more granual control.
If copy is wanted, simply use `string_copy` before calling the function.

Impacted functions are:
`string_to_uppercase`, `string_to_lowercase`, `string_replace`,
`string_trim_start`, `string_trim_end`, `string_trim`,
`string_capitalize`, `string_reverse`
2023-08-06 23:17:07 +02:00
01e9b71402 chore(release): 3.1.0 [skip ci] v3.1.0 2023-08-06 14:43:01 +00:00
5c6f4d8192 feat: improvements to filesystem_get_mimetype 2023-08-06 16:39:33 +02:00
d604288365 docs: improve usage explanations 2023-08-06 16:12:10 +02:00
dff2836bfc feat: add filesystem_remove 2023-08-06 12:14:13 +02:00
ad0a460923 feat: add filesystem_exists 2023-08-06 12:06:43 +02:00
be8a63ca8a chore(release): 3.0.0 [skip ci] v3.0.0 2023-08-05 13:40:47 +00:00
693cab7a34 chore: only use sanitizer flags in test 2023-08-05 15:33:19 +02:00
3220c0e26b chore: update @since version 2023-08-05 15:03:53 +02:00
06b34b115b feat: support giving a custom character for string_trim, string_trim_start, string_trim_end
BREAKING CHANGE: Functions signatures changed.
If you want to preserve the same behavior, you should pass explictly the space character to trim:
Example: `string_trim(" Hello ")` => `string_trim(" Hello ", ' ')`
2023-08-05 14:19:44 +02:00
316dfa10e7 chore: improve Makefile to use -fsanitize=address -fsanitize=undefined gcc flags
Fixes #5
2023-08-04 19:58:41 +02:00
145dfcf546 fix: more memory issues thanks to -fsanitize=address flag
Work In Progress #5
2023-08-04 19:20:00 +02:00
d345c90ba3 style: fix linting 2023-08-04 00:02:35 +02:00
209440588d fix: more memory issues thanks to -fsanitize=address flag
Work In Progress #5
2023-08-03 23:55:14 +02:00
a0a1310f53 feat: add hash_map_free 2023-08-03 23:17:54 +02:00
8b6f06dc6e feat: add stack_free 2023-08-03 23:01:19 +02:00
1e475a59b1 feat: add queue_free 2023-08-03 22:57:32 +02:00
6a40df3ad1 feat: add linked_list_free 2023-08-03 19:48:02 +02:00
d231a0f055 feat: add array_list_free 2023-08-03 19:42:50 +02:00
2796dec0c7 fix: memory issues thanks to -fsanitize=address flag
Work In Progress #5
2023-08-03 19:35:44 +02:00
9717cff35a feat: add terminal_print_array_list 2023-07-31 23:51:37 +02:00
368c07c57a fix: char* issues with memory allocation
Work In progress #5
2023-06-26 22:32:26 +02:00
d774ef6ad4 chore(release): 2.0.0 [skip ci] v2.0.0 2023-06-25 19:42:33 +00:00
e7726b8cc7 ci: install documentation tools 2023-06-25 21:39:53 +02:00
c168a7179d ci: check all possible Makefile paths 2023-06-25 21:37:56 +02:00
c5a7bbf7c1 fix: set_version typings 2023-06-25 21:35:24 +02:00
074d9e0acb docs: fix doxygen warnings 2023-06-25 21:32:16 +02:00
0c93355e60 chore: remove .exe file extension to be more "linux way" 2023-06-25 20:17:28 +02:00
016bfeb47f perf: use SipHash 1-3 algorithm for hash_map 2023-06-25 20:09:07 +02:00
baea00fdac feat!: remove dictionary data structure
Replaced by `hash_map`
2023-06-25 20:09:07 +02:00
256e9cb690 refactor: usage of hash_map instead of dictionary 2023-06-25 20:09:07 +02:00
4a11a096fa feat: add hash_map data structure
fixes #3
2023-06-25 20:09:07 +02:00
931a0b69ce chore: replace missing string_t 2023-06-25 20:09:07 +02:00
682997c0a5 chore: prefix all #define for includes with LIBCPROJECT 2023-06-25 20:09:07 +02:00
5f60abc759 chore: remove useless @return 2023-06-25 20:09:07 +02:00
a0140a6716 feat: add types.h 2023-06-25 20:09:07 +02:00
1ded37b106 feat!: rename types string to string_t and byte to byte_t 2023-06-25 20:08:58 +02:00
8f3ee199e5 feat: add string type 2023-06-25 15:20:38 +02:00
ce088f8ff5 feat: add byte typedef 2023-06-25 15:20:38 +02:00
eb798a619a fix: update filesystem_read and filesystem_write signatures
BREAKING CHANGE: take a `uint8_t` for file_content instead of `char`

It makes more sense to treat files as array of "bytes", not only characters/text files.
2023-06-25 15:20:07 +02:00
b9f573bfb2 feat: support more mimetypes for filesystem_get_mimetype 2023-06-24 21:15:55 +02:00
b665e3629d fix: handle filesystem read and write errors 2023-06-24 21:13:00 +02:00
d42ec38e36 ci: add gcc --version 2023-06-24 21:09:19 +02:00
d1b93d1da0 docs: add @since to know when a structure/function was added 2023-06-24 21:06:45 +02:00
071b645cb4 build(deps): update doxygen-awesome-css to v2.2.1 2023-06-24 20:44:48 +02:00
e5d07d73cd ci: set dependencies version explicitly 2023-06-24 20:39:14 +02:00
d850f04069 perf: compile with -O3 gcc flag 2023-06-24 20:30:34 +02:00
20d31ba2e3 fix: update author - Théo LUDWIG 2023-06-24 20:29:30 +02:00
f1a729c418 chore(release): 1.2.0 [skip ci] v1.2.0 2023-01-07 18:43:17 +00:00
bd85171e2d refactor: include only in header files 2023-01-07 19:41:04 +01:00