Bananymous 
							
						 
						
							 
							
							
							
							
								
							
							
								988a4e1cd8 
								
							 
						 
						
							
							
								
								BAN: Fix bug of size of splice after slice()  
							
							 
							
							... 
							
							
							
							I have no idea what was I doing before :D 
							
						 
						
							2023-10-24 17:23:45 +03:00  
						
					 
				
					
						
							
							
								
								Bananymous 
							
						 
						
							 
							
							
							
							
								
							
							
								db5c24b2a5 
								
							 
						 
						
							
							
								
								BAN: Implement ByteSpan  
							
							 
							
							... 
							
							
							
							This is a span over exisiting containers/data types. I'm not too
happy with the constructors and assignment operators, but they will
work for now 
							
						 
						
							2023-10-20 04:59:29 +03:00  
						
					 
				
					
						
							
							
								
								Bananymous 
							
						 
						
							 
							
							
							
							
								
							
							
								781c950af6 
								
							 
						 
						
							
							
								
								BAN: add helper to cast Span<T> to Span<const T>  
							
							 
							
							
							
						 
						
							2023-10-20 04:59:08 +03:00  
						
					 
				
					
						
							
							
								
								Bananymous 
							
						 
						
							 
							
							
							
							
								
							
							
								d2cfc843e4 
								
							 
						 
						
							
							
								
								BAN: Optional can now be constructed from another Optional  
							
							 
							
							... 
							
							
							
							Also fix bug in release_value() where we did not call the
destructor. 
							
						 
						
							2023-10-11 20:10:06 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								eb5c6cf736 
								
							 
						 
						
							
							
								
								BAN: Remove endianness functions from Math  
							
							 
							
							... 
							
							
							
							There is now a Endianness.h for these. The functions were super slow. 
							
						 
						
							2023-09-29 19:38:07 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								27adb9486b 
								
							 
						 
						
							
							
								
								BAN: Update Endiannes API  
							
							 
							
							... 
							
							
							
							Add functions to swap endiannes or convert host to big/little endian
This code should be very compiler friendly and should be optimized to
single bswap instruction on x86. 
							
						 
						
							2023-09-28 01:22:14 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								b62186441b 
								
							 
						 
						
							
							
								
								BAN: Implement basic WeakPtr  
							
							 
							
							... 
							
							
							
							This can be constructed from classes that inherit from Weakable 
							
						 
						
							2023-09-25 19:43:10 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								971eb737c1 
								
							 
						 
						
							
							
								
								BAN: Fix LinkedList::pop_back()  
							
							 
							
							
							
						 
						
							2023-09-22 17:20:35 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								720bc418a6 
								
							 
						 
						
							
							
								
								All: Clear lines with only whitspace in them  
							
							 
							
							
							
						 
						
							2023-09-10 00:31:42 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								cbd2519b9a 
								
							 
						 
						
							
							
								
								Kernel: better handle kernel errors  
							
							 
							
							
							
						 
						
							2023-08-29 00:13:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								e8a73f9696 
								
							 
						 
						
							
							
								
								BuildSystem: use -a with rsync  
							
							 
							
							... 
							
							
							
							This allows cmake to not rebuild whole project every time 
							
						 
						
							2023-08-28 11:38:17 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								b05cf9ef09 
								
							 
						 
						
							
							
								
								BuildSystem: Base sysroot is now distributed as a tar ball  
							
							 
							
							... 
							
							
							
							This allows file and directory permissions work as intended.
cmake is now filled with 'sudo' but with sudo timeout this should be
fine. 
							
						 
						
							2023-08-23 10:38:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								2bf12a52d1 
								
							 
						 
						
							
							
								
								BAN: increase function size to 5 * sizeof(void*)  
							
							 
							
							
							
						 
						
							2023-08-22 14:52:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								be5b81740e 
								
							 
						 
						
							
							
								
								BAN: Add enum class Iteration for for_each loops  
							
							 
							
							
							
						 
						
							2023-08-22 11:30:53 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								e7458ca10a 
								
							 
						 
						
							
							
								
								BAN: Function call is now const  
							
							 
							
							
							
						 
						
							2023-08-22 11:30:40 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								6feb8a99d2 
								
							 
						 
						
							
							
								
								BAN: UniqPtr can now be constructed from other convertible UniqPtr  
							
							 
							
							
							
						 
						
							2023-08-04 10:29:42 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								5411c5aa4a 
								
							 
						 
						
							
							
								
								BAN: Fix function call in Optional  
							
							 
							
							
							
						 
						
							2023-07-21 10:57:46 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								891144dac1 
								
							 
						 
						
							
							
								
								BAN: Iterators are now single general type with CONST template  
							
							 
							
							... 
							
							
							
							This allows us to use the same base class for iterator and
const_iterator which were practically the same code. 
							
						 
						
							2023-07-12 13:35:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								41e7b53903 
								
							 
						 
						
							
							
								
								BAN: add either_or and either_or_t  
							
							 
							
							... 
							
							
							
							This allows you to select type depending on constexpr evaluatable
boolean 
							
						 
						
							2023-07-12 13:34:31 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								6b0920e8c0 
								
							 
						 
						
							
							
								
								BAN: Implement ConstIteratorDouble and add it to HashMap  
							
							 
							
							... 
							
							
							
							This is same as IteratorDouble except it uses const_iterator and does
not return non-const references. 
							
						 
						
							2023-07-12 11:41:05 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								4285729d5c 
								
							 
						 
						
							
							
								
								BAN: Generalize HashMapIterator to IteratorDouble  
							
							 
							
							... 
							
							
							
							This iterator should be able to iterate any container within container
with type iterator defined.
This also fixed bug if first entry in outer container is empty container. 
							
						 
						
							2023-07-12 09:29:05 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								9174a89971 
								
							 
						 
						
							
							
								
								BAN: Add iterators to HashMap  
							
							 
							
							
							
						 
						
							2023-07-10 23:16:41 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								74af46cb4a 
								
							 
						 
						
							
							
								
								BAN: RefPtr can be constructed from other types  
							
							 
							
							
							
						 
						
							2023-07-10 11:48:11 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								c38e8de6b5 
								
							 
						 
						
							
							
								
								BAN: Optional can be constructed inplace  
							
							 
							
							
							
						 
						
							2023-06-12 23:45:36 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								97638f7ade 
								
							 
						 
						
							
							
								
								BAN: Add operator-> and operator* to Optional  
							
							 
							
							
							
						 
						
							2023-06-12 22:25:14 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								a0be415e09 
								
							 
						 
						
							
							
								
								BAN: Add basic Optional  
							
							 
							
							
							
						 
						
							2023-06-11 21:00:25 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								6aff459e1c 
								
							 
						 
						
							
							
								
								BAN: add StringView::contains(char)  
							
							 
							
							
							
						 
						
							2023-06-05 22:51:02 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								413f05bfca 
								
							 
						 
						
							
							
								
								BAN: Add UniqPtr  
							
							 
							
							
							
						 
						
							2023-06-04 00:39:20 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								2ce244d303 
								
							 
						 
						
							
							
								
								BAN: Errors now includes assert.h  
							
							 
							
							
							
						 
						
							2023-06-03 18:53:05 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								feea2d4024 
								
							 
						 
						
							
							
								
								BAN: Fix function call in Vector  
							
							 
							
							
							
						 
						
							2023-06-01 00:50:04 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								cb359a05dc 
								
							 
						 
						
							
							
								
								BuildSystem: link libraries when they change  
							
							 
							
							... 
							
							
							
							This also fixed the need for manual linkin on firt build 
							
						 
						
							2023-05-31 23:01:40 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								f79250c4d4 
								
							 
						 
						
							
							
								
								LibC: Rewrite all the headers.  
							
							 
							
							... 
							
							
							
							We now have more or less posix issue 2018 conforming libc headers.
This was a really time consuming and boring operation but it had to
be done.
Now we get to actually start implementing libc :) 
							
						 
						
							2023-05-26 22:31:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								78b62776d2 
								
							 
						 
						
							
							
								
								BAN: libban is now build into library dir  
							
							 
							
							
							
						 
						
							2023-05-26 22:31:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								bda4614783 
								
							 
						 
						
							
							
								
								BAN: Errors.h can be included from userspace  
							
							 
							
							
							
						 
						
							2023-05-26 22:31:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								632b699475 
								
							 
						 
						
							
							
								
								BAN: add is_arithmetic and is_signed to Traits.h  
							
							 
							
							
							
						 
						
							2023-05-15 20:26:29 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								13fabcc1f1 
								
							 
						 
						
							
							
								
								BAN: add pow, log2, log10, log in math  
							
							 
							
							... 
							
							
							
							These are implemented using x86 floating point assembly 
							
						 
						
							2023-05-10 19:03:33 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								c2ad76fe4f 
								
							 
						 
						
							
							
								
								BAN: Error uses 64 bit error codes  
							
							 
							
							
							
						 
						
							2023-05-07 02:09:52 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								88a2c60065 
								
							 
						 
						
							
							
								
								BAN: Add is_power_of_two to Math functions  
							
							 
							
							
							
						 
						
							2023-04-28 14:42:49 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								c5b006bf19 
								
							 
						 
						
							
							
								
								BAN: Add {TRY,MUST}_REF for references  
							
							 
							
							... 
							
							
							
							It is annoying that we have to have separate macros for these but
I can't find a way to cleanly return lvalue reference from statement
expression. Currently we cast the reference to pointer and return
unreference the pointer outside of the expression.
This feature will probably not be used any time soon, but atleas
it is implemented if I need it one day 
							
						 
						
							2023-04-19 00:31:15 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								115c44630d 
								
							 
						 
						
							
							
								
								BAN: TRY and MUST macros use rvalue references  
							
							 
							
							
							
						 
						
							2023-04-19 00:11:15 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								1dc81abca4 
								
							 
						 
						
							
							
								
								BAN: Add specialization for ErrorOr<LValueReference>  
							
							 
							
							... 
							
							
							
							ErrorOr can now return a reference :) 
							
						 
						
							2023-04-18 22:02:47 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								5aaf2128a8 
								
							 
						 
						
							
							
								
								BAN: Variant with reference now supports copy/assign  
							
							 
							
							
							
						 
						
							2023-04-18 20:21:23 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								6aeac17072 
								
							 
						 
						
							
							
								
								BAN: Variant now works with references  
							
							 
							
							... 
							
							
							
							References can be assigned with the set() method. Construction nor
assigment operators cannot be used with references to avoid ambiguity
with what assignment to reference does.
You can set the underlying reference with the set() method and access
it with the get() method.
The references are stored as pointers to the object under the hood
which means that size of a reference is sizeof pointer. 
							
						 
						
							2023-04-18 19:53:34 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								6d425182a2 
								
							 
						 
						
							
							
								
								BAN: Variant::set now copy/move assigns when possible  
							
							 
							
							
							
						 
						
							2023-04-18 19:10:22 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								04ac23b67c 
								
							 
						 
						
							
							
								
								BAN: Variant now has variadic template types  
							
							 
							
							
							
						 
						
							2023-04-18 18:29:48 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								9c0f3dd996 
								
							 
						 
						
							
							
								
								Kernel: Move kmalloc and MMU to Memory directory  
							
							 
							
							
							
						 
						
							2023-04-18 10:18:15 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								0ee7da92a3 
								
							 
						 
						
							
							
								
								BAN: Variant now aligns its data properly  
							
							 
							
							
							
						 
						
							2023-04-12 00:17:45 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								8d6db168d6 
								
							 
						 
						
							
							
								
								Kernel: remove message from BAN::Error  
							
							 
							
							... 
							
							
							
							We don't store the error message anymore in BAN::Error.
Instead we store a error code that can be mapped into a string.
This allows BAN::Error to only take 4 bytes instead of 128.
We should also make some kernel initialization just panic instead
of returning errors since they are required for succesfull boot
anyway. 
							
						 
						
							2023-04-11 23:25:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								2fabe1949c 
								
							 
						 
						
							
							
								
								BAN: Move RefPtr to its own file and create New.h  
							
							 
							
							... 
							
							
							
							New.h contains definitions for placement new operators and
BAN::allocator and BAN::dealloctor 
							
						 
						
							2023-04-10 21:07:25 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								c660df14ec 
								
							 
						 
						
							
							
								
								BuildSystem: Fix header copying to sysroot  
							
							 
							
							... 
							
							
							
							We used to copy all headers everytime to sysroot which caused
rebuild of the whole os. Now we use the cmake command
'copy_directory_if_different' which seemed to fix this issue :) 
							
						 
						
							2023-04-10 21:07:25 +03:00