mirror of
				https://github.com/ArthurSonzogni/FTXUI.git
				synced 2025-10-31 18:48:11 +08:00 
			
		
		
		
	Add LICENSE. Add take_any_args.
This commit is contained in:
		
							
								
								
									
										18
									
								
								ftxui/include/ftxui/dom/take_any_args.hpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								ftxui/include/ftxui/dom/take_any_args.hpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,18 @@ | ||||
| #include <type_traits> | ||||
|  | ||||
| // Turn a set of arguments into a vector. | ||||
| template <class... Args> | ||||
| Children unpack(Args... args) { | ||||
|   using T = std::common_type_t<Args...>; | ||||
|   std::vector<T> vec; | ||||
|   (vec.push_back(std::forward<Args>(args)), ...); | ||||
|   return vec; | ||||
| } | ||||
|  | ||||
| // Make |container| able to take any number of argments. | ||||
| #define TAKE_ANY_ARGS(container) \ | ||||
|   template <class... Args> \ | ||||
|   Element container(Args... children) { \ | ||||
|     return container(unpack(std::forward<Args>(children)...)); \ | ||||
|   } \ | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Arthur Sonzogni
					Arthur Sonzogni