forked from jan/fatamorgana
		
	use strict zip
This commit is contained in:
		
							parent
							
								
									dc9ed8e794
								
							
						
					
					
						commit
						691ce03150
					
				@ -1485,13 +1485,13 @@ class ArbitraryRepetition:
 | 
				
			|||||||
                size = write_uint(stream, 10)
 | 
					                size = write_uint(stream, 10)
 | 
				
			||||||
                size += write_uint(stream, len(self.x_displacements) - 1)
 | 
					                size += write_uint(stream, len(self.x_displacements) - 1)
 | 
				
			||||||
                size += sum(Delta(x, y).write(stream)
 | 
					                size += sum(Delta(x, y).write(stream)
 | 
				
			||||||
                            for x, y in zip(self.x_displacements, self.y_displacements))
 | 
					                            for x, y in zip(self.x_displacements, self.y_displacements, strict=True))
 | 
				
			||||||
            else:
 | 
					            else:
 | 
				
			||||||
                size = write_uint(stream, 11)
 | 
					                size = write_uint(stream, 11)
 | 
				
			||||||
                size += write_uint(stream, len(self.x_displacements) - 1)
 | 
					                size += write_uint(stream, len(self.x_displacements) - 1)
 | 
				
			||||||
                size += write_uint(stream, gcd)
 | 
					                size += write_uint(stream, gcd)
 | 
				
			||||||
                size += sum(Delta(x // gcd, y // gcd).write(stream)
 | 
					                size += sum(Delta(x // gcd, y // gcd).write(stream)
 | 
				
			||||||
                            for x, y in zip(self.x_displacements, self.y_displacements))
 | 
					                            for x, y in zip(self.x_displacements, self.y_displacements, strict=True))
 | 
				
			||||||
        return size
 | 
					        return size
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def __eq__(self, other: Any) -> bool:
 | 
					    def __eq__(self, other: Any) -> bool:
 | 
				
			||||||
 | 
				
			|||||||
@ -2632,22 +2632,22 @@ def dedup_field(record, r_field: str, modals: Modals, m_field: str) -> None:
 | 
				
			|||||||
    Args:
 | 
					    Args:
 | 
				
			||||||
        InvalidDataError: if both fields are `None`
 | 
					        InvalidDataError: if both fields are `None`
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
    r = getattr(record, r_field)
 | 
					    rr = getattr(record, r_field)
 | 
				
			||||||
    m = getattr(modals, m_field)
 | 
					    mm = getattr(modals, m_field)
 | 
				
			||||||
    if r is not None:
 | 
					    if rr is not None:
 | 
				
			||||||
        if m_field in ('polygon_point_list', 'path_point_list'):
 | 
					        if m_field in ('polygon_point_list', 'path_point_list'):
 | 
				
			||||||
            if _USE_NUMPY:
 | 
					            if _USE_NUMPY:
 | 
				
			||||||
                equal = numpy.array_equal(m, r)
 | 
					                equal = numpy.array_equal(mm, rr)
 | 
				
			||||||
            else:
 | 
					            else:
 | 
				
			||||||
                equal = (m is not None) and all(tuple(mm) == tuple(rr) for mm, rr in zip(m, r))
 | 
					                equal = (mm is not None) and all(tuple(mmm) == tuple(rrr) for mmm, rrr in zip(mm, rr, strict=True))
 | 
				
			||||||
        else:
 | 
					        else:
 | 
				
			||||||
            equal = (m is not None) and m == r
 | 
					            equal = (mm is not None) and mm == rr
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if equal:
 | 
					        if equal:
 | 
				
			||||||
            setattr(record, r_field, None)
 | 
					            setattr(record, r_field, None)
 | 
				
			||||||
        else:
 | 
					        else:
 | 
				
			||||||
            setattr(modals, m_field, r)
 | 
					            setattr(modals, m_field, rr)
 | 
				
			||||||
    elif m is None:
 | 
					    elif mm is None:
 | 
				
			||||||
        raise InvalidDataError('Unfillable field')
 | 
					        raise InvalidDataError('Unfillable field')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -61,7 +61,7 @@ def write_file_1(buf: IO[bytes]) -> IO[bytes]:
 | 
				
			|||||||
           + [0b11, 0b10]
 | 
					           + [0b11, 0b10]
 | 
				
			||||||
           )
 | 
					           )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    for t, (x, x_en) in enumerate(zip(wh, wh_en)):
 | 
					    for t, (x, x_en) in enumerate(zip(wh, wh_en, strict=True)):
 | 
				
			||||||
        write_uint(buf, 26)           # CTRAPEZOID record
 | 
					        write_uint(buf, 26)           # CTRAPEZOID record
 | 
				
			||||||
        write_byte(buf, 0b1000_1011 | (x_en << 5))    # TWHX_YRDL
 | 
					        write_byte(buf, 0b1000_1011 | (x_en << 5))    # TWHX_YRDL
 | 
				
			||||||
        write_uint(buf, 1)            # layer
 | 
					        write_uint(buf, 1)            # layer
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user