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

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

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

revision 297, Thu May 27 08:29:19 1999 UTC revision 299, Thu May 27 13:53:27 1999 UTC
# Line 36  Line 36 
36      val emptyGroup : pathname -> group      val emptyGroup : pathname -> group
37      val group :      val group :
38          pathname * privilegespec * exports option * members * complainer *          pathname * privilegespec * exports option * members * complainer *
39          GeneralParams.params          GeneralParams.info
40          -> group          -> group
41      val library :      val library :
42          pathname * privilegespec * exports * members * complainer *          pathname * privilegespec * exports * members * complainer *
43          GeneralParams.params          GeneralParams.info
44          -> group          -> group
45    
46      (* assembling privilege lists *)      (* assembling privilege lists *)
# Line 51  Line 51 
51      (* constructing member collections *)      (* constructing member collections *)
52      val emptyMembers : members      val emptyMembers : members
53      val member :      val member :
54          GeneralParams.params * (pathname -> group)          GeneralParams.info * (pathname -> group)
55          -> { sourcepath: pathname, group: pathname * region,          -> { sourcepath: pathname, group: pathname * region,
56               class: cm_symbol option }               class: cm_symbol option }
57          -> members          -> members
# Line 143  Line 143 
143                     subgroups = [] }                     subgroups = [] }
144    
145    
146      fun group (g, p, e, m, error, params) = let      fun group (g, p, e, m, error, gp) = let
147          val mc = applyTo MemberCollection.empty m          val mc = applyTo MemberCollection.empty m
148          val filter = Option.map (applyTo mc) e          val filter = Option.map (applyTo mc) e
149          val exports = MemberCollection.build (mc, filter, error, params)          val exports = MemberCollection.build (mc, filter, error, gp)
150          val subgroups = MemberCollection.subgroups mc          val subgroups = MemberCollection.subgroups mc
151      in      in
152          GG.GROUP { exports = exports, islib = false,          GG.GROUP { exports = exports, islib = false,
# Line 154  Line 154 
154                     subgroups = subgroups }                     subgroups = subgroups }
155      end      end
156    
157      fun library (g, p, e, m, error, params) = let      fun library (g, p, e, m, error, gp) = let
158          val mc = applyTo MemberCollection.empty m          val mc = applyTo MemberCollection.empty m
159          val filter = applyTo mc e          val filter = applyTo mc e
160          val exports = MemberCollection.build (mc, SOME filter, error, params)          val exports = MemberCollection.build (mc, SOME filter, error, gp)
161          val subgroups = MemberCollection.subgroups mc          val subgroups = MemberCollection.subgroups mc
162      in      in
163          GG.GROUP { exports = exports, islib = true,          GG.GROUP { exports = exports, islib = true,
# Line 183  Line 183 
183      end      end
184    
185      fun emptyMembers env = env      fun emptyMembers env = env
186      fun member (params, rparse) arg env = let      fun member (gp, rparse) arg env = let
187          val coll = MemberCollection.expandOne (params, rparse) arg          val coll = MemberCollection.expandOne (gp, rparse) arg
188          val group = #group arg          val group = #group arg
189          val error = GroupReg.error (#groupreg params) group          val error = GroupReg.error (#groupreg gp) group
190          fun e0 s = error EM.COMPLAIN s EM.nullErrorBody          fun e0 s = error EM.COMPLAIN s EM.nullErrorBody
191      in      in
192          MemberCollection.sequential (env, coll, e0)          MemberCollection.sequential (env, coll, e0)

Legend:
Removed from v.297  
changed lines
  Added in v.299

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