Bananymous
|
2403df50bb
|
BAN: Add getter for Function size
|
2023-02-02 23:19:18 +02:00 |
Bananymous
|
0d2d6e5348
|
BAN: Fix all emplace functions to actually do perfect forwarding
|
2023-02-01 21:41:51 +02:00 |
Bananymous
|
99cf1c0330
|
BAN: Add destructor to function if it needs to deallocate something someday
|
2023-02-01 21:41:18 +02:00 |
Bananymous
|
9b8de5025a
|
All: rename every function from UpperCamelCase to snake_case
This was a mess since I didn't know which to use but now I decided
to go with snake_case :)
|
2023-02-01 21:05:44 +02:00 |
Bananymous
|
4faa662a59
|
BAN: Rewrite Traits and add some more of them
|
2023-02-01 20:05:34 +02:00 |
Bananymous
|
1945b716ad
|
BAN: Implement basic LinkedList
|
2023-02-01 01:22:41 +02:00 |
Bananymous
|
5127da9ecc
|
BAN: Add more traits
|
2023-02-01 01:22:19 +02:00 |
Bananymous
|
56d6b2af3d
|
BAN: TRY() now returns the error itself and not ErrorOr<>
This allows us to use TRY with different ErrorOr<> templates
|
2023-02-01 01:21:14 +02:00 |
Bananymous
|
3a1f068bac
|
BAN: Add needed include to Function
|
2023-01-31 18:43:24 +02:00 |
Bananymous
|
f10a57dcec
|
BAN: Add RefCounted<> and Unique<>
We have now maybe functional smart pointers
|
2023-01-31 18:43:09 +02:00 |
Bananymous
|
b315fdc27f
|
Kernel: Finally managed to get 64-bit working
I had weird problems with interrupts but everything should work now
|
2023-01-25 19:19:28 +02:00 |
Bananymous
|
7c6d474a3a
|
BAN: Add basic ScopeGuard
|
2023-01-23 17:41:34 +02:00 |
Bananymous
|
c9e32b1b5b
|
BAN: Cleanup Queue AddressOf functions
|
2023-01-18 17:19:57 +02:00 |
Bananymous
|
64f0cc0d42
|
BAN: fix Vector code
one return value was missing and AddressOf functions were kinda ugly
|
2023-01-18 17:18:54 +02:00 |
Bananymous
|
dd607ce86f
|
BAN: Add basic lambda support for BAN::Function
|
2023-01-18 14:39:31 +02:00 |
Bananymous
|
ef2e8f1a2f
|
BAN: Move RemoveReference and IsLValueReference to their own header
Also implement basic Less, Equal, Greater
|
2023-01-18 13:39:08 +02:00 |
Bananymous
|
59fa4055a6
|
BAN: Add Queue::Emplace()
|
2023-01-17 12:02:59 +02:00 |
Bananymous
|
1340e26148
|
BAN: Add Vector::Emplace and EmplaceBack() and fix insert assignment
|
2023-01-17 11:59:36 +02:00 |
Bananymous
|
cf63552b2a
|
BAN: Cleanup includes
|
2023-01-17 11:38:16 +02:00 |
Bananymous
|
a7a55cd0fb
|
BAN: Rename Forward.h -> ForwardList.h to avoid confusion with BAN::Forward()
|
2023-01-17 11:21:21 +02:00 |
Bananymous
|
53a5ad3cf9
|
BAN: Function now properly forward arguments
|
2023-01-17 11:16:46 +02:00 |
Bananymous
|
124afbecaa
|
BAN: Add Forward()
|
2023-01-17 11:15:57 +02:00 |
Bananymous
|
5122d27f89
|
BAN: Add Front() and Back() to StringView
|
2023-01-16 18:56:51 +02:00 |
Bananymous
|
3561257286
|
BAN: Add basic Function for function pointers and member functions
|
2023-01-16 15:09:27 +02:00 |
Bananymous
|
a02d4c59ed
|
BAN: Vector and Queue replace Address() with AddressOf and correct const
|
2023-01-16 12:10:16 +02:00 |
Bananymous
|
c62d512d68
|
BAN: Add Iterator and ConstIterator to Vector
|
2023-01-13 17:48:19 +02:00 |
Bananymous
|
57cbd728db
|
BAN: Rewrite Queue with move semantics
|
2023-01-13 15:04:06 +02:00 |
Bananymous
|
0f4e95acc5
|
BAN: Rewrite vector with move semantics
|
2023-01-13 15:04:06 +02:00 |
Bananymous
|
065e23d307
|
BAN: fix include
|
2023-01-13 15:04:06 +02:00 |
Bananymous
|
82a25f9035
|
BAN: implement placement new
|
2023-01-13 14:45:27 +02:00 |
Bananymous
|
61de71e0d5
|
BAN: Properly allocate/deallocate elements in Vector/Queue
|
2023-01-13 01:09:40 +02:00 |
Bananymous
|
6ed542d6bf
|
BAN: Queue and Vector now default initialize newly allocated elements
|
2023-01-13 01:00:50 +02:00 |
Bananymous
|
c35181a92f
|
BAN: ASSERT now prints the condition
|
2023-01-13 00:57:47 +02:00 |
Bananymous
|
53d1d12c12
|
BAN: String add operator=(StringView)
|
2023-01-13 00:57:47 +02:00 |
Bananymous
|
c33c6c5785
|
BAN: memcpy only if we already have a buffer
|
2023-01-13 00:17:19 +02:00 |
Bananymous
|
6b73547989
|
All: edit gcc flags
|
2023-01-13 00:04:15 +02:00 |
Bananymous
|
61bd9da8e0
|
BAN: Add [[nodiscard]] to BAN functions returning ErrorOr
|
2023-01-12 23:57:07 +02:00 |
Bananymous
|
78da037dda
|
BAN: String, Queue and Vector dont use floating point arithmetic
|
2023-01-12 17:00:29 +02:00 |
Bananymous
|
67308c36ad
|
BAN: ErrorOr<void> does not do an heap allocation anymore
|
2023-01-12 00:11:54 +02:00 |
Bananymous
|
d02e3b19c7
|
BAN: Move operator new/delete to BAN/Memory.cpp
We also now implement alignment new
|
2023-01-10 21:59:40 +02:00 |
Bananymous
|
6f9552d673
|
BAN: Add math to its own namespace
|
2023-01-10 19:11:27 +02:00 |
Bananymous
|
ee83cd3430
|
BAN: Implement basic static array
|
2023-01-10 17:52:00 +02:00 |
Bananymous
|
85068e27d6
|
BAN: BAN/Memory.h now provides the operator new and delete
|
2023-01-10 17:51:33 +02:00 |
Bananymous
|
1a65ea977d
|
BAN: Better ASSERT()
|
2023-01-10 17:43:18 +02:00 |
Bananymous
|
efd8638a96
|
Kernel: Improve kernel panic message and rename it 'panic'->'Panic'
|
2023-01-09 21:57:03 +02:00 |
Bananymous
|
b60af90538
|
BAN: Add min, max and clamp
|
2022-12-30 19:52:16 +02:00 |
Bananymous
|
f0fd62c703
|
BAN: Strings can now be constructed using BAN::Formatter
|
2022-12-27 20:01:05 +02:00 |
Bananymous
|
fd4fdffd46
|
BAN::Formatter now takes putc like function as a parameter
This allows us to use capturing lambdas as a putc like function
|
2022-12-27 19:55:07 +02:00 |
Bananymous
|
6732cabf20
|
BAN: StringView::Split now accepts a function
Original overload with char is not threadsafe anymore, but I don't
want to duplicate code :)
|
2022-12-20 11:50:32 +02:00 |
Bananymous
|
7ae00ac76e
|
BAN: Vector now has a Has() function
|
2022-12-20 11:38:29 +02:00 |
Bananymous
|
4c559f50a4
|
BAN: StringView::Split() now precomputes number of elements
We dont have to resize vector on PushBack()'s if we reserve required size
|
2022-12-20 11:37:28 +02:00 |
Bananymous
|
d5a068f90c
|
BAN: String and StringView don't have to compute strlen for equality
|
2022-12-20 11:36:01 +02:00 |
Bananymous
|
9fa3d891e9
|
BAN: Vector now has a copy constructor
|
2022-12-15 17:28:12 +02:00 |
Bananymous
|
c21766760b
|
Add strlen comparing back to StringView since it is not nullterminated
|
2022-12-13 22:45:51 +02:00 |
Bananymous
|
ced05ff5f2
|
BAN: use only memcmp when comparing string(view) with const char*
|
2022-12-13 21:32:51 +02:00 |
Bananymous
|
bf7a320050
|
BAN: Fix Time format printing
|
2022-12-13 21:04:09 +02:00 |
Bananymous
|
5345b6b8c3
|
BAN: overloaded operator== for more types
|
2022-12-13 20:55:09 +02:00 |
Bananymous
|
d806778a6d
|
BAN: Formatter now passes arguments as const references
We used to take everything by value, since I wasn't sure if I wanted
to overload bigger types
|
2022-12-13 20:43:43 +02:00 |
Bananymous
|
cb6dee9d91
|
BAN: Implement more basic functionality
String has more features
StringView was implemented
Basic move semantics are now working
Added file for forward declarations
|
2022-12-13 20:41:32 +02:00 |
Bananymous
|
941238830e
|
BAN: Now actually build libban :D
|
2022-12-13 16:13:38 +02:00 |
Bananymous
|
57b5e7ecf3
|
BAN: Add pragma once to String and Vector
|
2022-12-13 15:15:36 +02:00 |
Bananymous
|
b42469efd7
|
BAN: Vector now has Back() and Front() helpers
|
2022-12-13 15:08:12 +02:00 |
Bananymous
|
b491007eac
|
BAN: Default constructed string is now nullterminated
|
2022-12-13 15:07:35 +02:00 |
Bananymous
|
07f61d9b82
|
BAN: Implement basic vector
|
2022-12-13 14:43:58 +02:00 |
Bananymous
|
171a33bbcd
|
Kernel/BAN: Add weekday to Time structure and get it with RTC
|
2022-12-13 14:37:10 +02:00 |
Bananymous
|
00f230fcb2
|
BAN: Add basic String implementation
|
2022-12-13 14:37:10 +02:00 |
Bananymous
|
19307ce197
|
BAN: MUST() now returns the underlying value
|
2022-12-13 14:37:10 +02:00 |
Bananymous
|
b49a873d54
|
BAN: Add allocator/deallocator references for kernel/userspace
|
2022-12-13 13:40:54 +02:00 |
Bananymous
|
52c793bb5c
|
Kernel/BAN: Make Time a struct in BAN and add formatter to it
|
2022-12-13 12:37:26 +02:00 |
Bananymous
|
3cda527987
|
BAN: Rename BAN::Formatter argument overload thing
|
2022-12-13 12:30:48 +02:00 |
Bananymous
|
334abe6b27
|
Kernel: lol
|
2022-12-13 12:12:15 +02:00 |
Bananymous
|
835430e7b0
|
BAN: Move Formatter to new project called BAN
I also implemented basic ErrorOr and Queue
|
2022-12-13 10:39:57 +02:00 |