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/semant/members.sml
ViewVC logotype

Diff of /sml/trunk/src/cm/semant/members.sml

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

revision 1878, Mon Nov 21 19:54:57 2005 UTC revision 1879, Fri Dec 16 06:13:13 2005 UTC
# Line 40  Line 40 
40      val sequential : collection * collection * (string -> unit) -> collection      val sequential : collection * collection * (string -> unit) -> collection
41    
42      val build :      val build :
43          collection * SymbolSet.set * GeneralParams.info *          SrcPath.file * collection * SymbolSet.set * GeneralParams.info *
44          DependencyGraph.farsbnode       (* pervasive env *)          DependencyGraph.farsbnode       (* pervasive env *)
45          -> impexp SymbolMap.map * GroupGraph.privileges * SymbolSet.set          -> impexp SymbolMap.map * GroupGraph.privileges * SymbolSet.set
46    
# Line 163  Line 163 
163                           sources = s_union (#sources c1, #sources c2),                           sources = s_union (#sources c1, #sources c2),
164                           reqpriv = StringSet.union (#reqpriv c1, #reqpriv c2) }                           reqpriv = StringSet.union (#reqpriv c1, #reqpriv c2) }
165          end          end
166        | sequential _ = ERRORCOLLECTION        | sequential (ERRORCOLLECTION, _, _) = ERRORCOLLECTION
167          | sequential (_, ERRORCOLLECTION, _) = ERRORCOLLECTION
168    
169      fun expandOne { gp, rparse, load_plugin } arg = let      fun expandOne { gp, rparse, load_plugin } arg = let
170          val { name, mkpath, group, class, tooloptions,          val { name, mkpath, group, class, tooloptions,
# Line 227  Line 228 
228                  case SmlInfo.exports gp i of                  case SmlInfo.exports gp i of
229                      NONE => SS.empty                      NONE => SS.empty
230                    | SOME ex => (if SS.isEmpty ex then                    | SOME ex => (if SS.isEmpty ex then
231                                      w0 ("no module exports from " ^                                      e0 ("no module exports from " ^
232                                          SrcPath.descr p)                                          SrcPath.descr p)
233                                  else ();                                  else ();
234                                  ex)                                  ex)
235              fun addLD (s, m) = SM.insert (m, s, i)              fun addLD (s, m) = SM.insert (m, s, i)
236              val ld = SS.foldl addLD SM.empty exports              val ld = SS.foldl addLD SM.empty exports
237          in          in if SS.isEmpty exports then ERRORCOLLECTION
238              COLLECTION { imports = SM.empty,             else COLLECTION { imports = SM.empty,
239                           smlfiles = [(i, exports)],                           smlfiles = [(i, exports)],
240                           localdefs = ld,                           localdefs = ld,
241                           subgroups = [],                           subgroups = [],
# Line 247  Line 248 
248          foldl combine (empty msources) collections          foldl combine (empty msources) collections
249      end      end
250    
251      fun build (COLLECTION c, filter, gp, perv_fsbnode) =      fun build (g, COLLECTION c, filter, gp, perv_fsbnode) =
252          BuildDepend.build (c, filter, gp, perv_fsbnode)            if GroupReg.anyErrors (#groupreg gp) g then
253        | build (ERRORCOLLECTION, _, _, _) =                (SM.empty, StringSet.empty, SS.empty)
254              else BuildDepend.build (c, filter, gp, perv_fsbnode)
255          | build (_, ERRORCOLLECTION, _, _, _) =
256          (SM.empty, StringSet.empty, SS.empty)          (SM.empty, StringSet.empty, SS.empty)
257    
258      fun mkIndex (gp, g, COLLECTION c) = Index.mkIndex (gp, g, c)      fun mkIndex (gp, g, COLLECTION c) = Index.mkIndex (gp, g, c)

Legend:
Removed from v.1878  
changed lines
  Added in v.1879

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