mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
| \section{\module{cmpcache} ---
 | |
|          Efficient file comparisons}
 | |
| 
 | |
| \declaremodule{standard}{cmpcache}
 | |
| \sectionauthor{Moshe Zadka}{mzadka@geocities.com}
 | |
| \modulesynopsis{Compare files very efficiently.}
 | |
| 
 | |
| The \module{cmpcache} module defines a function to compare files, taking all
 | |
| sort of short-cuts to make it a highly efficient operation.
 | |
| 
 | |
| The \module{cmpcache} module defines the following function:
 | |
| 
 | |
| \begin{funcdesc}{cmp}{f1, f2}
 | |
| Compare two files given as names. The following tricks are used to
 | |
| optimize the comparisons:
 | |
| 
 | |
| \begin{itemize}
 | |
|         \item Signatures (type, size and mtime) are computed via
 | |
|               \refmodule{statcache}
 | |
|         \item Files with identical type, size and mtime are assumed equal.
 | |
|         \item Files with different type or size are never equal.
 | |
|         \item The module only compares files it already compared if their
 | |
|               signature changed.
 | |
|         \item No external programs are called.
 | |
| \end{itemize}
 | |
| \end{funcdesc}
 | |
| 
 | |
| Example:
 | |
| 
 | |
| \begin{verbatim}
 | |
| >>> import cmpcache
 | |
| >>> cmpcache.cmp('libundoc.tex', 'libundoc.tex')
 | |
| 1
 | |
| >>> cmpcache.cmp('libundoc.tex', 'lib.tex')
 | |
| 0
 | |
| \end{verbatim}
 | 
