27 lines
		
	
	
		
			549 B
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			27 lines
		
	
	
		
			549 B
		
	
	
	
		
			C
		
	
	
	
	
	
| 
								 | 
							
								#pragma once
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define FORCEINLINE __forceinline
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								namespace meta::machine
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
									static constexpr auto cache_line_sz = 64;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								namespace meta
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
									template<typename T, typename U>
							 | 
						||
| 
								 | 
							
									constexpr FORCEINLINE T s_cast(U&& rhs) noexcept;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									template<typename T, typename U>
							 | 
						||
| 
								 | 
							
									constexpr FORCEINLINE T d_cast(U&& rhs) noexcept;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									template<typename T, typename U>
							 | 
						||
| 
								 | 
							
									constexpr FORCEINLINE T r_cast(U&& rhs) noexcept;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									template<typename T, typename U>
							 | 
						||
| 
								 | 
							
									constexpr FORCEINLINE T c_cast(U&& rhs) noexcept;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									template<typename T>
							 | 
						||
| 
								 | 
							
									constexpr auto&& fwd(T&& fwdee) noexcept;
							 | 
						||
| 
								 | 
							
								}
							 |