Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/trunk/src/cm/smlfile/smlinfo.sml
ViewVC logotype

Diff of /sml/trunk/src/cm/smlfile/smlinfo.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 325, Thu Jun 10 05:00:05 1999 UTC revision 326, Thu Jun 10 06:08:29 1999 UTC
# Line 25  Line 25 
25      val info : GeneralParams.info ->      val info : GeneralParams.info ->
26          { sourcepath: AbsPath.t,          { sourcepath: AbsPath.t,
27            group: AbsPath.t * region,            group: AbsPath.t * region,
28            share: bool option }            share: bool option,
29              split: bool }
30          -> info          -> info
31    
32      val sourcepath : info -> AbsPath.t      val sourcepath : info -> AbsPath.t
# Line 37  Line 38 
38      val exports : GeneralParams.info -> info  -> SymbolSet.set option      val exports : GeneralParams.info -> info  -> SymbolSet.set option
39      val skeleton : GeneralParams.info -> info -> Skeleton.decl option      val skeleton : GeneralParams.info -> info -> Skeleton.decl option
40      val share : info -> bool option      val share : info -> bool option
41        val split : info -> bool
42      val lastseen : info -> TStamp.t      val lastseen : info -> TStamp.t
43    
44      (* forget a parse tree that we are done with *)      (* forget a parse tree that we are done with *)
# Line 78  Line 80 
80                    skelpath: AbsPath.t,                    skelpath: AbsPath.t,
81                    binpath: AbsPath.t,                    binpath: AbsPath.t,
82                    persinfo: persinfo,                    persinfo: persinfo,
83                    share: bool option }                    share: bool option,
84                      split: bool }
85    
86      type ord_key = info      type ord_key = info
87    
# Line 86  Line 89 
89      fun skelpath (INFO { skelpath = sp, ... }) = sp      fun skelpath (INFO { skelpath = sp, ... }) = sp
90      fun binpath (INFO { binpath = bp, ... }) = bp      fun binpath (INFO { binpath = bp, ... }) = bp
91      fun share (INFO { share = s, ... }) = s      fun share (INFO { share = s, ... }) = s
92        fun split (INFO { split = s, ... }) = s
93    
94      fun gerror (gp: GeneralParams.info) = GroupReg.error (#groupreg gp)      fun gerror (gp: GeneralParams.info) = GroupReg.error (#groupreg gp)
95    
# Line 123  Line 127 
127      end      end
128    
129      fun info (gp: GeneralParams.info) arg = let      fun info (gp: GeneralParams.info) arg = let
130          val { sourcepath, group = gr as (group, region), share } = arg          val { sourcepath, group = gr as (group, region), share, split } = arg
131          val policy = #fnpolicy (#param gp)          val policy = #fnpolicy (#param gp)
132          val skelpath = FNP.mkSkelPath policy sourcepath          val skelpath = FNP.mkSkelPath policy sourcepath
133          val binpath = FNP.mkBinPath policy sourcepath          val binpath = FNP.mkBinPath policy sourcepath
# Line 163  Line 167 
167                 skelpath = skelpath,                 skelpath = skelpath,
168                 binpath = binpath,                 binpath = binpath,
169                 persinfo = persinfo (),                 persinfo = persinfo (),
170                 share = share }                 share = share,
171                   split = split }
172      end      end
173    
174      (* check timestamp and throw away any invalid cache *)      (* check timestamp and throw away any invalid cache *)
175      fun validate (INFO ir) = let      fun validate (INFO ir) = let
176          (* don't use "..." pattern to have the compiler catch later          (* don't use "..." pattern to have the compiler catch later
177           * additions to the type! *)           * additions to the type! *)
178          val { sourcepath, skelpath, binpath, persinfo = PERS pir, share } = ir          val { sourcepath, skelpath, binpath, persinfo = PERS pir,
179                  share, split } = ir
180          val { group, lastseen, parsetree, skeleton } = pir          val { group, lastseen, parsetree, skeleton } = pir
181          val ts = !lastseen          val ts = !lastseen
182          val nts = AbsPath.tstamp sourcepath          val nts = AbsPath.tstamp sourcepath

Legend:
Removed from v.325  
changed lines
  Added in v.326

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0