File Annotation
Not logged in
11e5d7ce42 2007-11-06       aku: ## -*- tcl -*-
11e5d7ce42 2007-11-06       aku: # # ## ### ##### ######## ############# #####################
11e5d7ce42 2007-11-06       aku: ## Copyright (c) 2007 Andreas Kupries.
11e5d7ce42 2007-11-06       aku: #
11e5d7ce42 2007-11-06       aku: # This software is licensed as described in the file LICENSE, which
11e5d7ce42 2007-11-06       aku: # you should have received as part of this distribution.
11e5d7ce42 2007-11-06       aku: #
11e5d7ce42 2007-11-06       aku: # This software consists of voluntary contributions made by many
11e5d7ce42 2007-11-06       aku: # individuals.  For exact contribution history, see the revision
11e5d7ce42 2007-11-06       aku: # history and logs, available at http://fossil-scm.hwaci.com/fossil
11e5d7ce42 2007-11-06       aku: # # ## ### ##### ######## ############# #####################
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: ## Pass IV. Coming after the symbol collation pass this pass now
11e5d7ce42 2007-11-06       aku: ## removes all revisions and symbols referencing any of the excluded
11e5d7ce42 2007-11-06       aku: ## symbols from the persistent database.
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: # # ## ### ##### ######## ############# #####################
11e5d7ce42 2007-11-06       aku: ## Requirements
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: package require Tcl 8.4                               ; # Required runtime.
11e5d7ce42 2007-11-06       aku: package require snit                                  ; # OO system.
11e5d7ce42 2007-11-06       aku: package require vc::tools::log                        ; # User feedback.
11e5d7ce42 2007-11-06       aku: package require vc::fossil::import::cvs::state        ; # State storage.
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: # # ## ### ##### ######## ############# #####################
11e5d7ce42 2007-11-06       aku: ## Register the pass with the management
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: vc::fossil::import::cvs::pass define \
11e5d7ce42 2007-11-06       aku:     FilterSymbols \
11e5d7ce42 2007-11-06       aku:     {Filter symbols, remove all excluded pieces} \
11e5d7ce42 2007-11-06       aku:     ::vc::fossil::import::cvs::pass::filtersym
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: # # ## ### ##### ######## ############# #####################
11e5d7ce42 2007-11-06       aku: ##
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: snit::type ::vc::fossil::import::cvs::pass::filtersym {
11e5d7ce42 2007-11-06       aku:     # # ## ### ##### ######## #############
11e5d7ce42 2007-11-06       aku:     ## Public API
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku:     typemethod setup {} {
11e5d7ce42 2007-11-06       aku: 	# Define names and structure of the persistent state of this
11e5d7ce42 2007-11-06       aku: 	# pass.
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: 	state reading symbol
11e5d7ce42 2007-11-06       aku: 	state reading blocker
11e5d7ce42 2007-11-06       aku: 	state reading parent
11e5d7ce42 2007-11-06       aku: 	state reading preferedparent
11e5d7ce42 2007-11-06       aku: 	state reading revision
11e5d7ce42 2007-11-06       aku: 	state reading branch
11e5d7ce42 2007-11-06       aku: 	state reading tag
11e5d7ce42 2007-11-06       aku: 	return
11e5d7ce42 2007-11-06       aku:     }
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku:     typemethod load {} {
11e5d7ce42 2007-11-06       aku: 	# Pass manager interface. Executed to load data computed by
11e5d7ce42 2007-11-06       aku: 	# this pass into memory when this pass is skipped instead of
11e5d7ce42 2007-11-06       aku: 	# executed.
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: 	# The results of this pass are fully in the persistent state,
11e5d7ce42 2007-11-06       aku: 	# there is nothing to load for the next one.
11e5d7ce42 2007-11-06       aku: 	return
11e5d7ce42 2007-11-06       aku:     }
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku:     typemethod run {} {
11e5d7ce42 2007-11-06       aku: 	# Pass manager interface. Executed to perform the
11e5d7ce42 2007-11-06       aku: 	# functionality of the pass.
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: 	# The removal of excluded symbols and everything referencing
11e5d7ce42 2007-11-06       aku: 	# to them is done completely in the database.
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: 	state transaction {
11e5d7ce42 2007-11-06       aku: 	    FilterExcludedSymbols
11e5d7ce42 2007-11-06       aku: 	}
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: 	log write 1 filtersym "Filtering completed"
11e5d7ce42 2007-11-06       aku: 	return
11e5d7ce42 2007-11-06       aku:     }
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku:     typemethod discard {} {
11e5d7ce42 2007-11-06       aku: 	# Pass manager interface. Executed for all passes after the
11e5d7ce42 2007-11-06       aku: 	# run passes, to remove all data of this pass from the state,
11e5d7ce42 2007-11-06       aku: 	# as being out of date.
11e5d7ce42 2007-11-06       aku: 	return
11e5d7ce42 2007-11-06       aku:     }
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku:     # # ## ### ##### ######## #############
11e5d7ce42 2007-11-06       aku:     ## Internal methods
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku:     proc FilterExcludedSymbols {} {
11e5d7ce42 2007-11-06       aku: 	state run {
11e5d7ce42 2007-11-06       aku: 	}
11e5d7ce42 2007-11-06       aku: 	return
11e5d7ce42 2007-11-06       aku:     }
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku:     # # ## ### ##### ######## #############
11e5d7ce42 2007-11-06       aku:     ## Configuration
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku:     pragma -hasinstances   no ; # singleton
11e5d7ce42 2007-11-06       aku:     pragma -hastypeinfo    no ; # no introspection
11e5d7ce42 2007-11-06       aku:     pragma -hastypedestroy no ; # immortal
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku:     # # ## ### ##### ######## #############
11e5d7ce42 2007-11-06       aku: }
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: namespace eval ::vc::fossil::import::cvs::pass {
11e5d7ce42 2007-11-06       aku:     namespace export filtersym
11e5d7ce42 2007-11-06       aku:     namespace eval filtersym {
11e5d7ce42 2007-11-06       aku: 	namespace import ::vc::fossil::import::cvs::state
11e5d7ce42 2007-11-06       aku: 	namespace import ::vc::tools::log
11e5d7ce42 2007-11-06       aku: 	log register filtersym
11e5d7ce42 2007-11-06       aku:     }
11e5d7ce42 2007-11-06       aku: }
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: # # ## ### ##### ######## ############# #####################
11e5d7ce42 2007-11-06       aku: ## Ready
11e5d7ce42 2007-11-06       aku: 
11e5d7ce42 2007-11-06       aku: package provide vc::fossil::import::cvs::pass::filtersym 1.0
11e5d7ce42 2007-11-06       aku: return