Brett
490c52c803
Fix issue with initalizer order
2024-02-29 09:10:29 -05:00
Brett
47354e1d8a
std:: hashmap variant fix
2024-02-29 08:20:23 -05:00
Brett
b40c40efdc
profering
2024-02-29 08:11:40 -05:00
Brett
9b4d0cc9a8
push version 0.12.0. Breaking changes to the hashmap typename, Now blt::hashmap_t and blt::hashset_t
...
This was done to be more consistent
2024-02-25 14:39:56 -05:00
Brett
61d46de573
time update
2024-02-24 14:31:59 -05:00
Brett
b4dbb6377e
unicode, cmakes
2024-02-24 03:30:31 -05:00
Brett
384529333c
GNUC define fix
2024-02-22 15:54:52 -05:00
Brett
e9a11a9a7e
time on linx fix
2024-02-22 15:52:01 -05:00
Laptop Windows
89bde7c6e8
warnings
2024-02-21 20:36:22 -05:00
Laptop Windows
43cf8c0ba1
windows
2024-02-21 20:24:00 -05:00
Laptop Windows
9b53d82f1c
working msvc
2024-02-21 19:32:40 -05:00
Brett
392c32751d
vector 3
2024-02-21 15:31:22 -05:00
Brett
8571a8034b
vector 2
2024-02-21 13:55:56 -05:00
Brett
e320355d62
vector
2024-02-21 13:18:05 -05:00
Brett
6bea6f87f5
unused var fix
2024-02-20 15:22:15 -05:00
Brett
0b6b6aed9b
untested vector changes
2024-02-20 15:18:05 -05:00
Brett
1fdf6f6e89
allocator cleanup
2024-02-19 14:47:09 -05:00
Brett
83fff1652d
he's a beautuful lad though -michael
2024-02-17 20:46:29 -05:00
Brett
8af1db43c3
uwu
2024-02-16 20:06:06 -05:00
Brett
3395a56bd3
more allocators
2024-02-16 18:38:12 -05:00
Brett
8a32d6b675
allocators
2024-02-16 18:21:13 -05:00
Brett
6ec0b1f886
changes?
2024-02-14 16:19:48 -05:00
Brett
8e5b3ed284
make template specialization more clear
2024-02-14 15:25:18 -05:00
Brett
ea31d8f26c
add resize to scoped buffer to allow better usage in the GP assignment
2024-02-14 15:21:59 -05:00
Brett
3473247e6c
what changed?
2024-02-13 23:49:18 -05:00
Brett
e1530de338
constexpr funny man
2024-02-13 17:26:05 -05:00
Brett
c7beb41042
more tricks to the buffer
2024-02-13 17:06:33 -05:00
Brett
cef8eb26b9
pointer fix
2024-02-13 15:11:02 -05:00
Brett
6f2b1c9041
maybe fix span
2024-02-13 15:09:08 -05:00
Brett
3b7d3d4d2a
love the span
2024-02-11 14:05:53 -05:00
Brett
7ac20db077
span
2024-02-09 00:14:43 -05:00
Brett
070f1812cd
span
2024-02-09 00:13:59 -05:00
Brett
c89aa61cca
string_view splits, with sv variants for returning vectors of views into the string_view
2024-02-08 14:08:09 -05:00
Brett
cf27247eb4
enumerate on itr_offset
2024-02-08 13:43:30 -05:00
Brett
f3c3a3bc4a
iterator offsetting
2024-02-08 12:59:15 -05:00
Brett
4f871806ab
make arg_results public
2024-02-08 09:52:02 -05:00
Brett
82821c0095
add to_string values to argparse (make it cleaner
2024-02-08 08:49:19 -05:00
Brett
8c4c618cc0
refractor a bit
2024-02-06 00:20:37 -05:00
Brett
e0f2069b19
make vec class trivially copyable. Also add a couple new useful constructors
2024-02-06 00:00:35 -05:00
Brett
83729b83d0
ugh TODO: measure gcc version
2024-02-04 14:38:52 -05:00
Brett
25b35024e1
remove unused but troublesome include from nbt
2024-02-04 14:27:44 -05:00
Brett
2f400a6240
c++20 fixes
2024-02-04 14:24:25 -05:00
Brett
b2534baaf0
Merge remote-tracking branch 'github/main'
2024-02-04 13:07:31 -05:00
Brett
c2387e6564
expected seems to be working
2024-02-03 17:09:59 -05:00
Brett
f3b92c3c2c
currently broken and untested but almost have c++23 std::expected in BLT (c++17)
2024-02-03 13:11:59 -05:00
Brett
d638edf012
more std::expected
2024-02-01 18:46:47 -05:00
Brett
991acb8d4f
working on expected
2024-02-01 15:51:54 -05:00
Brett
527595e1cf
add assert with custom runtime fail message
2024-01-31 17:24:46 -05:00
Brett
215a596d21
assert print function
2024-01-31 17:13:22 -05:00
Brett
93f56ebcb2
system
2024-01-31 01:16:13 -05:00
Brett
2cc2b2d262
add cstdlib to assert.h because it's needed for exit()
2024-01-30 00:38:38 -05:00
Brett
a0b92ddfa7
destory now checks for null
2024-01-25 10:01:21 -05:00
Brett
4116404763
Merge remote-tracking branch 'refs/remotes/origin/main'
2024-01-25 10:01:03 -05:00
Brett
b828f3b200
destory now checks for null
2024-01-25 10:00:56 -05:00
Brett
2ef516e66a
check against nullptr
2024-01-24 17:37:01 -05:00
Brett
b383fb0d16
lambda vistor help
2024-01-24 17:03:20 -05:00
Brett
e219444d76
Merge remote-tracking branch 'github/main'
2024-01-19 16:36:50 -05:00
Brett
3163e66879
loader to string_view
2024-01-19 16:30:35 -05:00
Brett
0fbe3bf228
BLT rust like types because std::.... is too long
2024-01-16 14:31:58 -05:00
Brett
a2e8cacaf2
we love warnings
2024-01-16 14:24:41 -05:00
Brett
a4f0b1e3d4
obj laoder
2024-01-11 15:51:00 -05:00
Brett
60ec2051d8
nyahh
2024-01-11 11:16:46 -05:00
Brett
9147a85dc3
string_view trim
2024-01-08 22:08:48 -05:00
Brett
023b3f150b
cstdint
2024-01-07 13:06:39 -05:00
Brett
8411810ab5
need to find a better way of doing contains on all containers
2024-01-02 02:21:44 -05:00
Brett
bf6d15015a
typecast
2024-01-02 01:27:43 -05:00
Brett
73094dbd6d
add little fun != to vec
2024-01-02 01:18:47 -05:00
Brett
d882b76d83
whoops forgot logging include
2024-01-01 20:57:05 -05:00
Brett
f960dbddae
thread class needs some work. use the constructor if non-queue
2024-01-01 20:53:26 -05:00
Brett
6e51e5cbe6
add features
2023-12-30 17:05:57 -05:00
Brett
d913e95965
thread pool (untested)
2023-12-30 03:25:39 -05:00
Brett
13f82dfc2f
math rads
2023-12-29 19:32:16 -05:00
Laptop Windows
aad5958bc0
fixed windows
2023-12-29 01:07:08 -05:00
Brett
5ae17f4a86
fix msvc error
2023-12-28 12:33:01 -05:00
Brett
c706e9b1df
fix not including constexpr
2023-12-28 12:28:10 -05:00
Brett
1fed762bf8
string view in string.h
2023-12-20 14:57:17 -05:00
Brett
3778408504
make proper use of the allocator
2023-12-20 14:49:31 -05:00
Brett
ce778da7f1
bin tree
2023-12-20 14:45:48 -05:00
Brett
665f6e0186
remove construct/destruct from allocator
2023-12-20 14:36:46 -05:00
Brett
111ab14b37
small done
2023-12-19 01:28:59 -05:00
Brett
8e701f6953
binary tree
2023-12-19 00:35:37 -05:00
Brett
2440044d72
bump version + allocator rule of 5
2023-12-18 23:24:53 -05:00
Brett
b59f4af8ed
bump version
2023-12-18 23:16:34 -05:00
Brett
085fd70063
move allocator to new file, memory_util, move functions around
2023-12-18 23:13:44 -05:00
Brett
3638703242
make work as a standard allocator
2023-12-18 20:55:27 -05:00
Brett
825e2c71a4
comments on the area allocator
2023-12-18 19:51:55 -05:00
Brett
19743d2be0
memory time
2023-12-18 19:22:29 -05:00
Brett
b012b9f27c
area allocator workings (basic, needs improvement)
2023-12-18 02:02:35 -05:00
Brett
57be387904
Merge remote-tracking branch 'refs/remotes/tpgc/main'
2023-12-16 15:53:18 -05:00
Brett
0f48bb8060
stacky
2023-12-16 15:53:02 -05:00
Brett
445a0028f7
vector?
2023-12-16 02:46:44 -05:00
Brett
a691ca76b0
hashmap was in a bad place
2023-12-16 02:40:03 -05:00
Brett
4de984bdb8
emscript on system.h
2023-12-16 02:37:24 -05:00
Brett
bda044de1e
box
2023-12-15 14:03:33 -05:00
Brett
19f775b919
boxes now work nicely
2023-12-15 02:36:50 -05:00
Brett
1d52b21131
ascii box now fixed and back to where it was
2023-12-15 01:49:42 -05:00
Brett
90f271961f
visit
2023-12-11 17:52:24 -05:00
Brett
c1c989d416
love lambdas
2023-12-11 16:58:20 -05:00
Brett
4e526f1e8e
boxes
...
need to make titleless boxes work next
2023-12-11 16:48:44 -05:00
Brett
caaf91e9c7
boxes
2023-12-11 14:57:10 -05:00
Brett
7aae8272c3
memory tests
2023-12-10 15:15:23 -05:00
Brett
319f7a3771
static vector
2023-12-10 14:54:08 -05:00
Brett
e6d096a486
move ranges around (utility over memory)
...
TOOD: add reverse
2023-12-10 13:21:26 -05:00
Brett
ce6ade1a90
minior cleanup
2023-12-09 21:21:14 -05:00
Brett
8c862f5a8f
enumerate fast enough
2023-12-09 15:32:02 -05:00
Brett
eb9cd030e3
working on enumerate
2023-12-09 13:44:16 -05:00
Brett
704e77419f
test
2023-12-08 20:44:45 -05:00
Brett
a4220e3c0d
test
2023-12-08 20:11:58 -05:00
Brett
8defbaf70d
hot chocolate
2023-12-07 16:03:38 -05:00
Brett
da891be991
fix memory leak in assert, add demangling and link options to find function names
2023-12-07 15:59:26 -05:00
Brett
de84f9573b
Merge remote-tracking branch 'refs/remotes/tpgc/main' + explict fixes
2023-12-03 17:02:50 -05:00
Brett
743cb4ae91
sexy columns
2023-12-03 17:01:51 -05:00
Brett
03c63cdf90
formatting broken
2023-12-01 15:03:47 -05:00
Brett
34451b5b86
please make all men gay -brett (to santa, xmas forever list)
2023-12-01 12:02:20 -05:00
Brett
98b5f6fa1e
minor formatting
2023-11-30 20:14:18 -05:00
Brett
e2b278e8bd
working now
2023-11-30 19:56:45 -05:00
Brett
da32f9b98a
Autism (Ascii trees)
...
making ascii trees because fun
2023-11-29 21:36:22 -05:00
Brett
583807af96
fix profiler sorting
2023-11-26 18:05:38 -05:00
Brett
f5886416bf
move blackbox to utility
2023-11-26 17:35:06 -05:00
Brett
f99ea36a85
utility is useless
2023-11-24 13:45:14 -05:00
Brett
02c62a2d63
move blackboxes to system
2023-11-22 21:21:17 -05:00
Brett
6514736262
add format to cycles to make look nice
2023-11-22 20:39:46 -05:00
Brett
06f87c9734
fix missing cstring
2023-11-17 01:47:24 -05:00
Brett
fd9fa5454d
compiler support for blackbox
2023-11-14 01:05:28 -05:00
Brett
5472783bd7
it's still recursive but it's honest work
2023-11-13 15:32:39 -05:00
Brett
3d7abd2765
fix assert, working on loading
2023-11-13 15:15:27 -05:00
Brett
19baf8b048
include recursive
2023-11-13 14:27:51 -05:00
Brett
32e2d48cd3
worsen logging
2023-11-10 12:40:10 -05:00
Brett
bd7976cf71
fix logging
2023-11-09 21:11:34 -05:00
Brett
e912e7e272
ranges
2023-11-09 19:11:56 -05:00
Brett
da7627dd3b
memory
2023-11-09 19:07:24 -05:00
Brett
e28f30bcec
fix uninit error
2023-11-09 15:28:17 -05:00
Brett
e81cddf6ba
fix posargs
2023-11-08 21:31:53 -05:00
Brett
97dd77d9c9
i hate you (fixed arg_parse ambig
2023-11-08 21:22:54 -05:00
Brett
97860853cf
size check
2023-11-08 20:25:47 -05:00
Brett
1ada8d3912
we sexy man
2023-11-08 18:50:16 -05:00
Brett
a555b53a61
update memory to check for size bounds:
2023-11-06 18:35:09 -05:00
Brett
1a72728aeb
warning fix
2023-11-06 00:43:44 -05:00
Brett
288076ed02
improve scoped_buffer, it now handles copying
2023-11-05 19:05:32 -05:00
Brett
15bcd37834
make argparse work on c++ 17
2023-11-02 16:02:40 -04:00
Brett
1d8f9b4bbd
fix memory leak
2023-10-27 14:32:15 -04:00
Brett
585429e345
order
2023-10-27 14:31:11 -04:00
Brett
0eb6db500b
holy const batman
2023-10-27 14:30:16 -04:00
Brett
52c5f2b7b3
make reference
2023-10-27 14:29:41 -04:00
Brett
f639b4f83c
add default constructor to scoped_buffer
2023-10-27 14:26:31 -04:00
Brett
55c497475e
why
2023-10-27 01:11:05 -04:00
Brett
827ee4bd55
move CPP20 constexpr to compat
2023-10-27 00:00:01 -04:00
Brett
8d2bb93b2d
fs hack
2023-10-26 20:06:03 -04:00
Brett
5d539c1a2f
fs hack
2023-10-26 20:01:01 -04:00
Brett
a3179d1a36
compat
2023-10-26 19:44:44 -04:00
Brett
0d6f396a15
fun2
2023-10-26 16:36:27 -04:00
Brett
cf49d155de
fun
2023-10-26 16:35:42 -04:00
Brett
a3d35b8e04
add support for gcc 8.5
2023-10-26 16:27:39 -04:00
Brett
e059f1a7ef
CONSTEXPR 20
2023-10-26 16:15:14 -04:00
Brett
fcceff189b
CONSTEXPR c++20 string functions
2023-10-25 14:30:24 -04:00
Brett
96af65a675
move
2023-10-25 01:26:44 -04:00
Brett
82583a444d
.data()
2023-10-25 01:26:26 -04:00
Brett
6252525091
.data()
2023-10-25 01:23:33 -04:00
Brett
4010df0e3f
const ptr
2023-10-25 01:23:16 -04:00
Brett
d59cfd0d4a
backwards compat
2023-10-24 21:44:24 -04:00
Brett
63ae93c6e6
move around to bytes and make it faster
2023-10-24 21:43:22 -04:00
Brett
5a07594e42
fix assert
2023-10-15 17:48:10 -04:00
Brett
76b2d57f05
add split for char
2023-10-15 16:43:20 -04:00
Brett
88ef415f8b
add missing return
2023-10-14 18:36:32 -04:00
Brett
4f4ed1918b
add string char contains overload
2023-10-14 18:35:11 -04:00
Brett
ce642a30b7
rename
2023-10-14 17:06:10 -04:00
Brett
f55e7d931b
add string numbers check
2023-10-14 17:05:51 -04:00
Brett
fbd067e69e
add ability for std::string in args.get<T>
2023-10-09 21:50:41 -04:00
Brett
9c712402f3
profiler_v2 seems to be completely functional
2023-10-05 01:48:54 -04:00
Brett
ab24a8733b
add partial API compatability with profiler v1
...
the general idea is the same however due to how profiles are handled after calling write or print profile the intervals inside are no longer valid.
(they are deleted and will be removed from the internal hashmap)
print profile is also now consistent with the new API, old calls will need to be updated.
2023-10-05 01:40:36 -04:00
Brett
3266a7b102
fix profiler disable macro
2023-10-05 01:31:54 -04:00
Brett
620c8b9e33
auto_interval, formatting see details for information
...
auto_interval now accepts an interval_t* which must be created manually. allows for clean RAII
format now switches to seconds after 1000ms instead of after 100ms. This feels more natural
2023-10-05 01:18:47 -04:00
Brett
fd3eb73008
profiler_v2 is WIP. seems to work but isn't fully tested
2023-10-04 01:39:43 -04:00
Brett
4486edee60
add .get for argparse (does a get_cast), add rdtsc for profilers
2023-10-03 00:43:08 -04:00
Brett
0bbcb8eeef
Merge remote-tracking branch 'github/main'
2023-09-21 23:24:03 -04:00
Brett
029132c622
macro sackro allocator get fuckedero
2023-09-21 23:23:27 -04:00
Brett
a438baeca3
fix time returning only extra nanoseconds. function now returns the total nanoseconds sine starting the program
...
this might be changed in the future
2023-09-17 16:24:53 -04:00
Brett
0b907867a2
argparse get_cast update to work with all is_arithmetic types
2023-09-17 15:22:37 -04:00
Brett
7a07f4a729
rename internal fields away from help to subcommand
2023-09-16 17:50:37 -04:00
Brett
02a1dc1a8c
rename help disabler to SUBCOMMAND action type
2023-09-16 17:40:35 -04:00
Brett
9db6dd8456
fix bug with postional args preventing the warning of missing args
...
add option to print full filename
fix issue with some help printing full filename
2023-09-16 17:22:15 -04:00
Brett
1e293c7dba
argparse update
...
a "janky" solution has been added to the argparse module of BLT.
The new update allows for the creation of "help disablers" which are basically akin to how git operates with
git submodule
git commit
etc
the primary command "git" can have flags (in the case of the tests, --no-color)
while having multiple help disabling sub commands (currently graphics and blt)
everything before the sub command arg will be processed as a primary command flag
everything after the sub command arg will be processed by the sub command arg_parse
this allows for effective namespacing of command modules
TODO:
- Make this as an action?
- cleanup the code
- use a name that makes more sense than "help disabler"
2023-09-16 16:27:48 -04:00
Brett
04cef480bd
argparse
2023-09-13 17:29:50 -04:00
Brett
6fc5496c76
remove path test
2023-09-13 16:52:23 -04:00
Brett
e2d932ea78
cpu timer
2023-09-13 16:49:56 -04:00
Brett
9e4bfad087
add more features to argparse
...
can now add git [name] [args] type calls
2023-09-10 15:33:11 -04:00
Brett
215220f98b
move defines to c++
2023-09-07 00:23:13 -04:00
Brett
465f1a4fc8
fix assert not requiring ; at the end
2023-09-07 00:21:02 -04:00
Brett
650af9877f
inline some string functions - disable warnings
2023-08-31 21:47:32 -04:00
Brett
d3ed46686e
add gcount to fs utils
2023-08-25 03:41:43 -04:00
Brett
1b4e36416a
make exception API more consistent
...
blt_throw no longer halts execution
BLT_THROW has been added which throws the exception
2023-08-23 15:26:36 -04:00
Brett
9348207ffb
Add exceptions / assertions
...
Only works for linux / GNU
2023-08-23 15:23:47 -04:00
Brett
34536e2a63
blt::mustache?
2023-08-21 01:03:05 -04:00
Brett
bbbf0ba2e5
fix lvalue reference issue with stoi, get_cast now exists
2023-08-18 19:22:12 -04:00
Brett
0e17dff862
update variant access in arg_parse::get
2023-08-18 19:15:21 -04:00
Brett
1d03938f95
SQLite
2023-08-18 02:21:22 -04:00
Brett
6579a3f5cb
remove static from random dev
2023-08-17 12:20:59 -04:00
Brett
ea986bbc95
only allow uuid.h if openssl is included in parent project
2023-08-17 12:14:59 -04:00
Brett
1e8f431f9e
UUID
2023-08-15 19:25:06 -04:00
Brett
d1e9d5daef
Merge remote-tracking branch 'refs/remotes/origin/main'
2023-08-14 22:50:04 -04:00