util.tcl

Go to the documentation of this file.
00001 /*  -*- tcl -*-*/
00002 /*  (C) 2006 Andreas Kupries <andreas_kupries@users.sourceforge.net>*/
00003 /** 
00004  * ###
00005  */
00006 
00007 namespace ::sak::util {}
00008 
00009 /*  ###*/
00010 
00011 ret  ::sak::util::path2modules (type paths) {
00012     set modules {}
00013     foreach p $paths {
00014     if {[file exists $p]} {set p [file tail $p]}
00015     lappend modules $p
00016     }
00017     return $modules
00018 }
00019 
00020 ret  ::sak::util::modules2path (type modules) {
00021     global distribution
00022     set modbase [file join $distribution modules]
00023 
00024     set paths {}
00025     foreach m $modules {
00026     lappend paths [file join $modbase $m]
00027     }
00028     return $paths
00029 }
00030 
00031 ret  ::sak::util::module2path (type module) {
00032     global distribution
00033     set modbase [file join $distribution modules]
00034     return [file join $modbase $module]
00035 }
00036 
00037 ret  ::sak::util::checkModules (type modvar) {
00038     upvar 1 $modvar modules
00039 
00040     if {![llength $modules]} {
00041     # Default to all if none are specified. This information does
00042     # not require validation.
00043 
00044     set modules [modules]
00045     return 1
00046     }
00047 
00048     set modules [path2modules $modules]
00049 
00050     set fail 0
00051     foreach m $modules {
00052     if {[modules_mod $m]} {
00053         lappend results $m
00054         continue
00055     }
00056 
00057     puts "  Unknown module: $m"
00058     set fail 1
00059     }
00060 
00061     if {$fail} {
00062     puts "  Stop."
00063     return 0
00064     }
00065 
00066     set modules $results
00067     return 1
00068 }
00069 
00070 /** 
00071  * ###
00072  */
00073 
00074 package provide sak::util 1.0
00075 

Generated on 21 Sep 2010 for Gui by  doxygen 1.6.1