CVS: sml-dist/src/compiler/ElabData/modules modules.sig, 1.2.20.2, 1.2.20.3 modules.sml, 1.2.20.1, 1.2.20.2 moduleutil.sig, 1.2.20.1, 1.2.20.2 moduleutil.sml, 1.2.20.1, 1.2.20.2
George Kuan <[email protected]> Thu, 06 Jul 2006 15:28:26 -0700
| Newsgroups | gmane.comp.lang.sml.smlnj.commits |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/smlnj/sml-dist/src/compiler/ElabData/modules
In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv13849/src/compiler/ElabData/modules
Modified Files:
Tag: primop-branch-2
modules.sig modules.sml moduleutil.sig moduleutil.sml
Log Message:
ElabData work on moduleutil.sml mainly
Index: modules.sig
===================================================================
RCS file: /cvsroot/smlnj/sml-dist/src/compiler/ElabData/modules/modules.sig,v
retrieving revision 1.2.20.2
retrieving revision 1.2.20.3
diff -C2 -d -r1.2.20.2 -r1.2.20.3
*** modules.sig 6 Jul 2006 20:10:33 -0000 1.2.20.2
--- modules.sig 6 Jul 2006 22:28:23 -0000 1.2.20.3
***************
*** 165,169 ****
rlzn : strEntity,
access : Access.access,
! info : PrimOpId.strPrimElems}
and fctEntity =
--- 165,169 ----
rlzn : strEntity,
access : Access.access,
! prim : PrimOpId.strPrimElem}
and fctEntity =
***************
*** 179,183 ****
rlzn : fctEntity,
access : Access.access,
! info : PrimOpId.strPrimElems}
(* the stamp and arith inside Types.tycon are critical *)
--- 179,183 ----
rlzn : fctEntity,
access : Access.access,
! prim : PrimOpId.strPrimElem}
(* the stamp and arith inside Types.tycon are critical *)
Index: modules.sml
===================================================================
RCS file: /cvsroot/smlnj/sml-dist/src/compiler/ElabData/modules/modules.sml,v
retrieving revision 1.2.20.1
retrieving revision 1.2.20.2
diff -C2 -d -r1.2.20.1 -r1.2.20.2
*** modules.sml 6 Jul 2006 16:35:38 -0000 1.2.20.1
--- modules.sml 6 Jul 2006 22:28:23 -0000 1.2.20.2
***************
*** 184,188 ****
rlzn : strEntity,
access : A.access,
! info : PrimOpId.strElemPrimIds}
and fctEntity =
--- 184,188 ----
rlzn : strEntity,
access : A.access,
! prim : PrimOpId.strPrimElem}
and fctEntity =
***************
*** 198,202 ****
rlzn : fctEntity,
access : A.access,
! info : II.ii}
(* the stamp and arith inside T.tycon are critical *)
--- 198,202 ----
rlzn : fctEntity,
access : A.access,
! prim : PrimOpId.strPrimElem}
(* the stamp and arith inside T.tycon are critical *)
Index: moduleutil.sig
===================================================================
RCS file: /cvsroot/smlnj/sml-dist/src/compiler/ElabData/modules/moduleutil.sig,v
retrieving revision 1.2.20.1
retrieving revision 1.2.20.2
diff -C2 -d -r1.2.20.1 -r1.2.20.2
*** moduleutil.sig 20 Jun 2006 22:15:23 -0000 1.2.20.1
--- moduleutil.sig 6 Jul 2006 22:28:24 -0000 1.2.20.2
***************
*** 17,25 ****
val getStr : Modules.elements * Modules.entityEnv
! * Symbol.symbol * Access.access * InlInfo.inl_info
-> Modules.Structure * EntPath.entVar
val getFct : Modules.elements * Modules.entityEnv
! * Symbol.symbol * Access.access * InlInfo.inl_info
-> Modules.Functor * EntPath.entVar
--- 17,25 ----
val getStr : Modules.elements * Modules.entityEnv
! * Symbol.symbol * Access.access * PrimOpId.strPrimElem
-> Modules.Structure * EntPath.entVar
val getFct : Modules.elements * Modules.entityEnv
! * Symbol.symbol * Access.access * PrimOpId.strPrimElem
-> Modules.Functor * EntPath.entVar
***************
*** 69,73 ****
(*** extract inl_info from a list of bindings *)
! val extractInfo : Bindings.binding -> InlInfo.inl_info
val getSigSymbols: Modules.Signature -> Symbol.symbol list
--- 69,73 ----
(*** extract inl_info from a list of bindings *)
! val extractInfo : Bindings.binding -> PrimOpId.primId
val getSigSymbols: Modules.Signature -> Symbol.symbol list
Index: moduleutil.sml
===================================================================
RCS file: /cvsroot/smlnj/sml-dist/src/compiler/ElabData/modules/moduleutil.sml,v
retrieving revision 1.2.20.1
retrieving revision 1.2.20.2
diff -C2 -d -r1.2.20.1 -r1.2.20.2
*** moduleutil.sml 20 Jun 2006 22:15:23 -0000 1.2.20.1
--- moduleutil.sml 6 Jul 2006 22:28:24 -0000 1.2.20.2
***************
*** 8,12 ****
structure SP = SymPath
structure IP = InvPath
- structure II = InlInfo
structure CVP = ConvertPaths
structure EP = EntPath
--- 8,11 ----
***************
*** 80,84 ****
of STRent entity =>
(STR{sign = sign, rlzn = entity, access = A.selAcc(dacc,slot),
! info = II.selStrInfo (dinfo, slot)},
entVar)
| _ => bug "getStr: bad entity")
--- 79,83 ----
of STRent entity =>
(STR{sign = sign, rlzn = entity, access = A.selAcc(dacc,slot),
! prim = PrimOpId.selStrPrimId (dinfo, slot)},
entVar)
| _ => bug "getStr: bad entity")
***************
*** 92,96 ****
of FCTent entity =>
(FCT{sign = sign, rlzn = entity, access = A.selAcc(dacc,slot),
! info = II.selStrInfo (dinfo, slot)},
entVar)
| _ => bug "getFct: bad entity")
--- 91,95 ----
of FCTent entity =>
(FCT{sign = sign, rlzn = entity, access = A.selAcc(dacc,slot),
! prim = PrimOpId.selStrPrimId (dinfo, slot)},
entVar)
| _ => bug "getFct: bad entity")
***************
*** 108,112 ****
| getStrName _ = bug "getStrName"
! fun getStrs (STR { sign = SIG sg, rlzn = {entities,...}, access,info,...}) =
let val elements = #elements sg
in
--- 107,111 ----
| getStrName _ = bug "getStrName"
! fun getStrs (STR { sign = SIG sg, rlzn = {entities,...}, access,prim,...}) =
let val elements = #elements sg
in
***************
*** 116,120 ****
rlzn = EE.lookStrEnt(entities,entVar),
access = A.selAcc(access, slot),
! info = II.selStrInfo (info, slot)})
| _ => NONE)
elements
--- 115,119 ----
rlzn = EE.lookStrEnt(entities,entVar),
access = A.selAcc(access, slot),
! prim = PrimOpId.selStrPrimId (prim, slot)})
| _ => NONE)
elements
***************
*** 176,180 ****
| strDefToStr(VARstrDef(sign,entPath), entEnv) =
STR{sign=sign,rlzn=EE.lookStrEP(entEnv,entPath),
! access=A.nullAcc, info=II.nullInfo}
(*
--- 175,179 ----
| strDefToStr(VARstrDef(sign,entPath), entEnv) =
STR{sign=sign,rlzn=EE.lookStrEP(entEnv,entPath),
! access=A.nullAcc, info=StrE []}
(*
***************
*** 450,459 ****
end
! (** extract inl_info from a list of bindings *)
! fun extractInfo(B.STRbind (M.STR { info, ... })) = info
! | extractInfo(B.FCTbind (M.FCT { info, ... })) = info
! | extractInfo(B.VALbind (V.VALvar {info, ...})) = info
! | extractInfo(B.CONbind _) = II.nullInfo
! | extractInfo _ = bug "unexpected binding in extractInfo"
(* extract all signature names from a structure --
--- 449,475 ----
end
! (** Get a strPrimElem with all the primIds found in
! a list of bindings
!
! Used in Elaborator/elaborate/elabmod.sml and
! SigMatch
! *)
! fun strPrimElemInBinds [] = StrE []
! | strPrimElemInBinds (bind::rest) =
! let
! val strPrims =
! (case bind
! of B.STRbind (M.STR { prim, ... }) => prim
! | B.FCTbind (M.FCT { prim, ... }) => prim
! | B.VALbind (V.VALvar {info, ...}) => PrimE info
! | B.CONbind _ => PrimE NonPrim
! | B.TYCbind _ =>
! bug "unexpected binding in strPrimElemInBinds")
! in
! (case (strPrimElemInBinds rest) of
! (StrE restPrims) =>
! StrE (strPrims :: restPrims)
! | PrimE id => StrE (PrimE id))
! end
(* extract all signature names from a structure --
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642