SCM Repository
View of /sml/trunk/src/cm/stable/bininfo.sml
Parent Directory
|
Revision Log
Revision 387 -
(download)
(annotate)
Mon Jul 26 02:44:20 1999 UTC (21 years, 6 months ago) by blume
File size: 1769 byte(s)
Mon Jul 26 02:44:20 1999 UTC (21 years, 6 months ago) by blume
File size: 1769 byte(s)
just syncing; this version does not work
(* * Bundling information pertaining to the member of a stable group. * - only includes information that does not require running * the machine-dependent part of the compiler * * (C) 1999 Lucent Technologies, Bell Laboratories * * Author: Matthias Blume (blume@kurims.kyoto-u.ac.jp) *) signature BININFO = sig type info type ord_key = info type complainer = GenericVC.ErrorMsg.complainer type region = GenericVC.SourceMap.region val new : { group: SrcPath.t, mkStablename: unit -> string, error: complainer, spec: string, offset: int, sh_mode: Sharing.mode } -> info val compare : info * info -> order val describe : info -> string val offset : info -> int val group : info -> SrcPath.t val stablename : info -> string val sh_mode : info -> Sharing.mode val error : info -> complainer end structure BinInfo :> BININFO = struct type complainer = GenericVC.ErrorMsg.complainer type region = GenericVC.SourceMap.region datatype info = INFO of { group: SrcPath.t, mkStablename: unit -> string, spec: string, offset: int, sh_mode: Sharing.mode, error: complainer } type ord_key = info val new = INFO fun compare (INFO i, INFO i') = case Int.compare (#offset i, #offset i') of EQUAL => SrcPath.compare (#group i, #group i') | unequal => unequal fun describe (INFO { group, spec, offset, ... }) = concat [SrcPath.descr group, "@", Int.toString offset, "(", spec, ")"] fun group (INFO { group = g, ... }) = g fun offset (INFO { offset = os, ... }) = os fun sh_mode (INFO { sh_mode = s, ... }) = s fun stablename (INFO { mkStablename = msn, ... }) = msn () fun error (INFO { error = e, ... }) = e end
root@smlnj-gforge.cs.uchicago.edu | ViewVC Help |
Powered by ViewVC 1.0.0 |