90a7268e5a 
								
							 
						 
						
							
							
								
								BAN: Rewrite RefCounted to return ErrorOr  
							
							
							
						 
						
							2023-03-02 12:30:11 +02:00  
				
					
						
							
							
								 
						
							
								dc1a4614fb 
								
							 
						 
						
							
							
								
								BAN: Errors are now moved around with TRY()  
							
							
							
						 
						
							2023-02-26 02:54:34 +02:00  
				
					
						
							
							
								 
						
							
								9439582154 
								
							 
						 
						
							
							
								
								BAN: Add ASSERT_NOT_REACHED()  
							
							
							
						 
						
							2023-02-26 02:53:58 +02:00  
				
					
						
							
							
								 
						
							
								6c1f0d1dc8 
								
							 
						 
						
							
							
								
								BAN: Add big_endian_to_host in Math  
							
							
							
						 
						
							2023-02-23 15:58:32 +02:00  
				
					
						
							
							
								 
						
							
								0e77b4dc4e 
								
							 
						 
						
							
							
								
								BAN: You can now transform little endian data to host endian  
							
							
							
						 
						
							2023-02-22 21:47:22 +02:00  
				
					
						
							
							
								 
						
							
								f98f3d851c 
								
							 
						 
						
							
							
								
								BAN: HashMap uses LinkedList as bucket, so kmalloc_fixed can be used  
							
							
							
						 
						
							2023-02-22 21:46:41 +02:00  
				
					
						
							
							
								 
						
							
								a845f8696c 
								
							 
						 
						
							
							
								
								BAN: Add function to decode utf-8 encoded strings  
							
							... 
							
							
							
							works for 3 byte unicode characters 
							
						 
						
							2023-02-22 21:45:26 +02:00  
				
					
						
							
							
								 
						
							
								4afc4660a4 
								
							 
						 
						
							
							
								
								BAN: Basic containers have shrink_to_fit() method  
							
							... 
							
							
							
							I also chaged the default memory allocation increase from 1.5 to 2 
							
						 
						
							2023-02-22 02:07:05 +02:00  
				
					
						
							
							
								 
						
							
								5d31e89574 
								
							 
						 
						
							
							
								
								Kernel: Update ErrorOr API and add path find to VFS  
							
							... 
							
							
							
							These two are done on the same commit since Changes to Shell were
annoying to make work with only one change 
							
						 
						
							2023-02-22 01:23:11 +02:00  
				
					
						
							
							
								 
						
							
								9aab67fed8 
								
							 
						 
						
							
							
								
								BAN: make all Math functions inline constexpr  
							
							
							
						 
						
							2023-02-22 01:17:56 +02:00  
				
					
						
							
							
								 
						
							
								10b6d51522 
								
							 
						 
						
							
							
								
								BAN: implement Variant<> for two types  
							
							
							
						 
						
							2023-02-22 01:17:21 +02:00  
				
					
						
							
							
								 
						
							
								afd4b7a184 
								
							 
						 
						
							
							
								
								BAN: HashMap now copies size when copying :D  
							
							
							
						 
						
							2023-02-22 01:16:07 +02:00  
				
					
						
							
							
								 
						
							
								fbc17eb6dd 
								
							 
						 
						
							
							
								
								BAN: Implement basic HashMap  
							
							
							
						 
						
							2023-02-20 16:00:51 +02:00  
				
					
						
							
							
								 
						
							
								247f03c79e 
								
							 
						 
						
							
							
								
								BAN: Make ErrorOr<> have attribute [[nodiscard]]  
							
							... 
							
							
							
							We don't have to specify it everytime we make function return ErrorOr 
							
						 
						
							2023-02-19 20:10:30 +02:00  
				
					
						
							
							
								 
						
							
								66a4b69a29 
								
							 
						 
						
							
							
								
								BAN: Math now uses template concepts and add div_round_up  
							
							
							
						 
						
							2023-02-19 00:48:56 +02:00  
				
					
						
							
							
								 
						
							
								7f12a7050a 
								
							 
						 
						
							
							
								
								BAN: Add data() to Vector.  
							
							... 
							
							
							
							This allows you to access the underlying data in a vector 
							
						 
						
							2023-02-16 20:47:49 +02:00  
				
					
						
							
							
								 
						
							
								f188fea81c 
								
							 
						 
						
							
							
								
								BAN: Implement basic HashSet  
							
							
							
						 
						
							2023-02-10 02:59:52 +02:00  
				
					
						
							
							
								 
						
							
								7630df84ad 
								
							 
						 
						
							
							
								
								BAN: Add basic hashing functionality  
							
							
							
						 
						
							2023-02-10 02:59:30 +02:00  
				
					
						
							
							
								 
						
							
								4f8fcf0bd7 
								
							 
						 
						
							
							
								
								BAN: Add Formatter specialization for Vector  
							
							
							
						 
						
							2023-02-10 02:58:14 +02:00  
				
					
						
							
							
								 
						
							
								f68ae01d0c 
								
							 
						 
						
							
							
								
								BAN: Fix ErrorOr<void> to actually set error byte  
							
							
							
						 
						
							2023-02-10 01:06:18 +02:00  
				
					
						
							
							
								 
						
							
								7ee4ecd7f4 
								
							 
						 
						
							
							
								
								BAN: Vector's and Queue's underlying type is T* instead of uint8_t*  
							
							... 
							
							
							
							I have no idea what kind of brainfart I had to make use uint8_t*
that just complicated the code :D 
							
						 
						
							2023-02-10 00:12:23 +02:00  
				
					
						
							
							
								 
						
							
								e5ffc1686f 
								
							 
						 
						
							
							
								
								BAN: Vector::const_iterator now uses const T* as underlying type  
							
							
							
						 
						
							2023-02-09 23:06:49 +02:00  
				
					
						
							
							
								 
						
							
								bfc9a2377c 
								
							 
						 
						
							
							
								
								BAN: LinkedList now uses iterators instead of const_iterators on methods  
							
							
							
						 
						
							2023-02-09 23:06:16 +02:00  
				
					
						
							
							
								 
						
							
								6a133782ed 
								
							 
						 
						
							
							
								
								All: Move to c++20  
							
							
							
						 
						
							2023-02-09 23:05:26 +02:00  
				
					
						
							
							
								 
						
							
								338771c5b0 
								
							 
						 
						
							
							
								
								BAN: Cleanup Vector code  
							
							... 
							
							
							
							*Applies to last patch also!*
Remove duplicate code in iterators. We used to have separate iterator
and const_iterator but now they are the same class with some enable_if
magic to disable references from const_iterator
This introduces some 'bad things' you can for example call
const_iterator.operator*<false>() to obtain non const reference. I
don't think this matters since you could use const_cast or something
else to work around const if you really tried 
							
						 
						
							2023-02-07 11:08:05 +02:00  
				
					
						
							
							
								 
						
							
								08dfb0e1db 
								
							 
						 
						
							
							
								
								BAN: Cleanup LinkedList code  
							
							
							
						 
						
							2023-02-06 19:01:52 +02:00  
				
					
						
							
							
								 
						
							
								2403df50bb 
								
							 
						 
						
							
							
								
								BAN: Add getter for Function size  
							
							
							
						 
						
							2023-02-02 23:19:18 +02:00  
				
					
						
							
							
								 
						
							
								0d2d6e5348 
								
							 
						 
						
							
							
								
								BAN: Fix all emplace functions to actually do perfect forwarding  
							
							
							
						 
						
							2023-02-01 21:41:51 +02:00  
				
					
						
							
							
								 
						
							
								99cf1c0330 
								
							 
						 
						
							
							
								
								BAN: Add destructor to function if it needs to deallocate something someday  
							
							
							
						 
						
							2023-02-01 21:41:18 +02:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								4faa662a59 
								
							 
						 
						
							
							
								
								BAN: Rewrite Traits and add some more of them  
							
							
							
						 
						
							2023-02-01 20:05:34 +02:00  
				
					
						
							
							
								 
						
							
								1945b716ad 
								
							 
						 
						
							
							
								
								BAN: Implement basic LinkedList  
							
							
							
						 
						
							2023-02-01 01:22:41 +02:00  
				
					
						
							
							
								 
						
							
								5127da9ecc 
								
							 
						 
						
							
							
								
								BAN: Add more traits  
							
							
							
						 
						
							2023-02-01 01:22:19 +02:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								3a1f068bac 
								
							 
						 
						
							
							
								
								BAN: Add needed include to Function  
							
							
							
						 
						
							2023-01-31 18:43:24 +02:00  
				
					
						
							
							
								 
						
							
								f10a57dcec 
								
							 
						 
						
							
							
								
								BAN: Add RefCounted<> and Unique<>  
							
							... 
							
							
							
							We have now maybe functional smart pointers 
							
						 
						
							2023-01-31 18:43:09 +02:00  
				
					
						
							
							
								 
						
							
								7c6d474a3a 
								
							 
						 
						
							
							
								
								BAN: Add basic ScopeGuard  
							
							
							
						 
						
							2023-01-23 17:41:34 +02:00  
				
					
						
							
							
								 
						
							
								c9e32b1b5b 
								
							 
						 
						
							
							
								
								BAN: Cleanup Queue AddressOf functions  
							
							
							
						 
						
							2023-01-18 17:19:57 +02:00  
				
					
						
							
							
								 
						
							
								64f0cc0d42 
								
							 
						 
						
							
							
								
								BAN: fix Vector code  
							
							... 
							
							
							
							one return value was missing and AddressOf functions were kinda ugly 
							
						 
						
							2023-01-18 17:18:54 +02:00  
				
					
						
							
							
								 
						
							
								dd607ce86f 
								
							 
						 
						
							
							
								
								BAN: Add basic lambda support for BAN::Function  
							
							
							
						 
						
							2023-01-18 14:39:31 +02:00  
				
					
						
							
							
								 
						
							
								ef2e8f1a2f 
								
							 
						 
						
							
							
								
								BAN: Move RemoveReference and IsLValueReference to their own header  
							
							... 
							
							
							
							Also implement basic Less, Equal, Greater 
							
						 
						
							2023-01-18 13:39:08 +02:00  
				
					
						
							
							
								 
						
							
								59fa4055a6 
								
							 
						 
						
							
							
								
								BAN: Add Queue::Emplace()  
							
							
							
						 
						
							2023-01-17 12:02:59 +02:00  
				
					
						
							
							
								 
						
							
								1340e26148 
								
							 
						 
						
							
							
								
								BAN: Add Vector::Emplace and EmplaceBack() and fix insert assignment  
							
							
							
						 
						
							2023-01-17 11:59:36 +02:00  
				
					
						
							
							
								 
						
							
								cf63552b2a 
								
							 
						 
						
							
							
								
								BAN: Cleanup includes  
							
							
							
						 
						
							2023-01-17 11:38:16 +02:00  
				
					
						
							
							
								 
						
							
								a7a55cd0fb 
								
							 
						 
						
							
							
								
								BAN: Rename Forward.h -> ForwardList.h to avoid confusion with BAN::Forward()  
							
							
							
						 
						
							2023-01-17 11:21:21 +02:00  
				
					
						
							
							
								 
						
							
								53a5ad3cf9 
								
							 
						 
						
							
							
								
								BAN: Function now properly forward arguments  
							
							
							
						 
						
							2023-01-17 11:16:46 +02:00  
				
					
						
							
							
								 
						
							
								124afbecaa 
								
							 
						 
						
							
							
								
								BAN: Add Forward()  
							
							
							
						 
						
							2023-01-17 11:15:57 +02:00  
				
					
						
							
							
								 
						
							
								5122d27f89 
								
							 
						 
						
							
							
								
								BAN: Add Front() and Back() to StringView  
							
							
							
						 
						
							2023-01-16 18:56:51 +02:00  
				
					
						
							
							
								 
						
							
								3561257286 
								
							 
						 
						
							
							
								
								BAN: Add basic Function for function pointers and member functions  
							
							
							
						 
						
							2023-01-16 15:09:27 +02:00  
				
					
						
							
							
								 
						
							
								a02d4c59ed 
								
							 
						 
						
							
							
								
								BAN: Vector and Queue replace Address() with AddressOf and correct const  
							
							
							
						 
						
							2023-01-16 12:10:16 +02:00