Diff
Not logged in

Differences From:

File tools/cvs2fossil/lib/c2f_pcollar.tcl part of check-in [27470a9304] - Extended pass I to capture the 'file executable' info of rcs archives. Currently the only way to store this info in the destination will be the use of fossil tags. by aku on 2007-10-13 21:15:30. [view]

To:

File tools/cvs2fossil/lib/c2f_pcollar.tcl part of check-in [ae19c0fcb4] - Extended pass manager to handle the skipped and defered passes coming before and after the actually executed passes. Extended passes I and II to have the required methods. Implemented loading (for skipped passes) as skeletons, implemented discarding (for defered passes) completely. Extended state manager with ability to discard state. by aku on 2007-10-13 23:29:17. [view]

@@ -79,9 +79,22 @@
 	}
 	return
     }
 
+    typemethod load {} {
+	# Pass manager interface. Executed for all passes before the
+	# run passes, to load all data of their pass from the state,
+	# as if it had been computed by the pass itself.
+
+	state reading project
+	state reading file
+	return
+    }
+
     typemethod run {} {
+	# Pass manager interface. Executed to perform the
+	# functionality of the pass.
+
 	set rbase [repository base?]
 	foreach project [repository projects] {
 	    set base [file join $rbase [$project base]]
 	    log write 1 collar "Scan $base"
@@ -125,8 +138,18 @@
 	repository printstatistics
 	repository persist
 
 	log write 1 collar "Scan completed"
+	return
+    }
+
+    typemethod discard {} {
+	# Pass manager interface. Executed for all passes after the
+	# run passes, to remove all data of this pass from the state,
+	# as being out of date.
+
+	state discard project
+	state discard file
 	return
     }
 
     typemethod ignore_conflicting_attics {} {