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 665, Fri Jun 16 04:43:57 2000 UTC revision 666, Fri Jun 16 08:27:00 2000 UTC
# Line 41  Line 41 
41      val newGeneration : unit -> unit      val newGeneration : unit -> unit
42    
43      val info : GeneralParams.info ->      val info : GeneralParams.info ->
44          { sourcepath: SrcPath.t,          { sourcepath: SrcPath.file,
45            group: SrcPath.t * region,            group: SrcPath.file * region,
46            sh_spec: Sharing.request }            sh_spec: Sharing.request }
47          -> info          -> info
48    
49      val info' : attribs -> GeneralParams.info ->      val info' : attribs -> GeneralParams.info ->
50          { sourcepath: SrcPath.t,          { sourcepath: SrcPath.file,
51            group: SrcPath.t * region,            group: SrcPath.file * region,
52            sh_spec: Sharing.request }            sh_spec: Sharing.request }
53          -> info          -> info
54    
55      val sourcepath : info -> SrcPath.t      val sourcepath : info -> SrcPath.file
56      val skelname : info -> string      val skelname : info -> string
57      val binname : info -> string      val binname : info -> string
58      val group : info -> SrcPath.t      val group : info -> SrcPath.file
59      val error : GeneralParams.info -> info -> complainer      val error : GeneralParams.info -> info -> complainer
60    
61      val parsetree : GeneralParams.info -> info -> (ast * source) option      val parsetree : GeneralParams.info -> info -> (ast * source) option
# Line 77  Line 77 
77       * members of the group are dismissed regardless of their       * members of the group are dismissed regardless of their
78       * generation. This is used to get rid of the information for       * generation. This is used to get rid of the information for
79       * members of now-stable libraries. *)       * members of now-stable libraries. *)
80      val cleanGroup : bool -> SrcPath.t -> unit      val cleanGroup : bool -> SrcPath.file -> unit
81    
82      (* See if a given piece of info is (still) known here: *)      (* See if a given piece of info is (still) known here: *)
83      val isKnown : info -> bool      val isKnown : info -> bool
# Line 86  Line 86 
86      val reset : unit -> unit      val reset : unit -> unit
87    
88      (* different ways of describing an sml file using group and source *)      (* different ways of describing an sml file using group and source *)
     val spec : info -> string           (* sspec *)  
     val fullSpec : info -> string       (* gspec(sspec) *)  
89      val descr : info -> string          (* sname *)      val descr : info -> string          (* sname *)
     val fullDescr : info -> string      (* gname(sspec) *)  
90    
91      val errorLocation : GeneralParams.info -> info -> string      val errorLocation : GeneralParams.info -> info -> string
92  end  end
# Line 118  Line 115 
115      (* sh_mode is an elaboration of sh_spec;  it must be persistent      (* sh_mode is an elaboration of sh_spec;  it must be persistent
116       * and gets properly re-computed when there is a new sh_spec *)       * and gets properly re-computed when there is a new sh_spec *)
117      datatype persinfo =      datatype persinfo =
118          PERS of { group: SrcPath.t * region,          PERS of { group: SrcPath.file * region,
119                    generation: generation ref,                    generation: generation ref,
120                    lastseen: TStamp.t ref,                    lastseen: TStamp.t ref,
121                    parsetree: (ast * source) option ref,                    parsetree: (ast * source) option ref,
# Line 126  Line 123 
123                    sh_mode: Sharing.mode ref }                    sh_mode: Sharing.mode ref }
124    
125      datatype info =      datatype info =
126          INFO of { sourcepath: SrcPath.t,          INFO of { sourcepath: SrcPath.file,
127                    mkSkelname: unit -> string,                    mkSkelname: unit -> string,
128                    mkBinname: unit -> string,                    mkBinname: unit -> string,
129                    persinfo: persinfo,                    persinfo: persinfo,
# Line 343  Line 340 
340    
341      fun parsetree gp i = getParseTree gp (i, true, true)      fun parsetree gp i = getParseTree gp (i, true, true)
342    
     fun spec (INFO { sourcepath, ... }) = SrcPath.specOf sourcepath  
     fun fullSpec (INFO { sourcepath, persinfo = PERS { group, ... }, ... }) =  
         concat [SrcPath.specOf (#1 group), "(", SrcPath.specOf sourcepath, ")"]  
343      fun descr (INFO { sourcepath, ... }) = SrcPath.descr sourcepath      fun descr (INFO { sourcepath, ... }) = SrcPath.descr sourcepath
     fun fullDescr (INFO { sourcepath, persinfo = PERS { group, ... }, ... }) =  
         concat [SrcPath.descr (#1 group), "(", SrcPath.specOf sourcepath, ")"]  
344    
345      fun errorLocation (gp: GeneralParams.info) (INFO i) = let      fun errorLocation (gp: GeneralParams.info) (INFO i) = let
346          val { persinfo = PERS { group = (group, reg), ... }, ... } = i          val { persinfo = PERS { group = (group, reg), ... }, ... } = i

Legend:
Removed from v.665  
changed lines
  Added in v.666

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