pack all structs
This commit is contained in:
		
							parent
							
								
									47610129ff
								
							
						
					
					
						commit
						2c75b82f6b
					
				@ -172,6 +172,7 @@ impl Iterator for GameMoveIter {
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#[repr(packed)]
 | 
			
		||||
#[derive(Clone, Debug, Copy, PartialEq, Eq, Hash)]
 | 
			
		||||
struct Bag {
 | 
			
		||||
    blue: u8,
 | 
			
		||||
@ -248,6 +249,7 @@ impl From<tinyvec::ArrayVec<[Tile; 128]>> for Bag {
 | 
			
		||||
}*/
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#[repr(packed)]
 | 
			
		||||
#[derive(Default, Debug, Copy, PartialEq, Eq, Hash, PartialOrd, Ord)]
 | 
			
		||||
struct Factory (tinyvec::ArrayVec<[Tile; 4]>);
 | 
			
		||||
impl Clone for Factory {
 | 
			
		||||
@ -270,6 +272,7 @@ impl DerefMut for Factory {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#[repr(packed)]
 | 
			
		||||
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
 | 
			
		||||
struct Market (tinyvec::ArrayVec<[Tile; 28]>);
 | 
			
		||||
impl Default for Market {
 | 
			
		||||
@ -298,6 +301,7 @@ type Patterns = [tinyvec::ArrayVec<[Tile; 5]>; 5];
 | 
			
		||||
type Row  = [bool; 5];
 | 
			
		||||
type Wall = [Row;  5];
 | 
			
		||||
 | 
			
		||||
#[repr(packed)]
 | 
			
		||||
#[derive(Debug, Clone, Default, Copy, PartialEq, Eq, Hash)]
 | 
			
		||||
struct Board {
 | 
			
		||||
    score: u8,
 | 
			
		||||
@ -670,7 +674,6 @@ impl Hash for Game {
 | 
			
		||||
    fn hash<H: Hasher>(&self, state: &mut H) {
 | 
			
		||||
        unsafe{any_as_u8_slice(self).deref().hash(state)}
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Tests
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user