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

Diff of /sml/trunk/src/cm/depend/mklist.sml

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

revision 357, Mon Jun 28 08:46:30 1999 UTC revision 358, Mon Jun 28 13:59:11 1999 UTC
# Line 26  Line 26 
26      fun bnode (DG.PNODE _) k m = k m      fun bnode (DG.PNODE _) k m = k m
27        | bnode (DG.BNODE n) k m = let        | bnode (DG.BNODE n) k m = let
28              val { bininfo = i, localimports = l, globalimports = g } = n              val { bininfo = i, localimports = l, globalimports = g } = n
29                fun k' m = bininfo i :: k (stab_reg (m, i))
30          in          in
31              if stab_isreg (m, i) then k m              if stab_isreg (m, i) then k m
32              else bininfo i              else do_list bnode l (do_list farbnode g k') m
                 :: do_list bnode l (do_list farbnode g k) (stab_reg (m, i))  
33          end          end
34    
35      and farbnode (_, n) k m = bnode n k m      and farbnode (_, n) = bnode n
36    
37      fun snode (DG.SNODE n) k m = let      fun snode (DG.SNODE n) k m = let
38          val { smlinfo = i, localimports = l, globalimports = g } = n          val { smlinfo = i, localimports = l, globalimports = g } = n
39            fun k' m = smlinfo i :: k (sml_reg (m, i))
40      in      in
41          if sml_isreg (m, i) then k m          if sml_isreg (m, i) then k m
42          else smlinfo i          else do_list snode l (do_list farsbnode g k') m
             :: do_list snode l (do_list farsbnode g k) (sml_reg (m, i))  
43      end      end
44    
45      and farsbnode (_, DG.SB_BNODE n) k m = bnode n k m      and farsbnode (_, DG.SB_BNODE n) = bnode n
46        | farsbnode (_, DG.SB_SNODE n) k m = snode n k m        | farsbnode (_, DG.SB_SNODE n) = snode n
47    
48      fun impexp (n, _) k m = farsbnode n k m      fun impexp (n, _) = farsbnode n
49    
50      fun group (GroupGraph.GROUP { exports, ... }) =      fun group (GroupGraph.GROUP { exports, ... }) =
51          do_list impexp (SymbolMap.listItems exports)          do_list impexp (SymbolMap.listItems exports)
52                         (fn m => [])                         (fn _ => [])
53                         (StableSet.empty, SmlInfoSet.empty)                         (StableSet.empty, SmlInfoSet.empty)
54  end  end

Legend:
Removed from v.357  
changed lines
  Added in v.358

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