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/smlfile/skel-io.sml
ViewVC logotype

Diff of /sml/trunk/src/cm/smlfile/skel-io.sml

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

revision 339, Thu Jun 17 16:14:01 1999 UTC revision 340, Fri Jun 18 05:32:46 1999 UTC
# Line 6  Line 6 
6   * Author: Matthias Blume (blume@kurims.kyoto-u.ac.jp)   * Author: Matthias Blume (blume@kurims.kyoto-u.ac.jp)
7   *)   *)
8  signature SKELIO = sig  signature SKELIO = sig
     exception InternalError  
9      val read : AbsPath.t * TStamp.t -> Skeleton.decl option      val read : AbsPath.t * TStamp.t -> Skeleton.decl option
10      val write : AbsPath.t * Skeleton.decl -> unit      val write : AbsPath.t * Skeleton.decl -> unit
11  end  end
# Line 18  Line 17 
17      structure S = Symbol      structure S = Symbol
18      structure SP = GenericVC.SymPath      structure SP = GenericVC.SymPath
19    
     exception InternalError  
20      exception FormatError      exception FormatError
21    
22      val s2b = Byte.stringToBytes      val s2b = Byte.stringToBytes
# Line 41  Line 39 
39    
40      (* We are consing up the whole output as a list of strings      (* We are consing up the whole output as a list of strings
41       * before concatenating it to form the final result and       * before concatenating it to form the final result and
42       * wrinting it out using one single `output' call. *)       * writing it out using one single `output' call. *)
43      fun w_name (n, r) =      fun w_name (n, r) =
44          (case S.nameSpace n of          (case S.nameSpace n of
45               S.SIGspace => "'"          (* only tyvars could start like that *)               S.SIGspace => "'"          (* only tyvars could start like that *)
46             | S.FCTspace => "("          (* no sym can start like that *)             | S.FCTspace => "("          (* no sym can start like that *)
47             | S.FSIGspace => ")"         (* no sym can start like that *)             | S.FSIGspace => ")"         (* no sym can start like that *)
48             | S.STRspace => ""           (* this should be safe now *)             | S.STRspace => ""           (* this should be safe now *)
49             | _ => raise InternalError)             | _ => GenericVC.ErrorMsg.impossible "SkelIO.w_name")
50           :: S.name n :: "." :: r           :: S.name n :: "." :: r
51    
52      fun write_decl (s, d) = let      fun write_decl (s, d) = let
# Line 155  Line 153 
153              raise exn              raise exn
154          end          end
155      end handle Interrupt.Interrupt => raise Interrupt.Interrupt      end handle Interrupt.Interrupt => raise Interrupt.Interrupt
              | InternalError => raise InternalError  
156               | _ => ()               | _ => ()
157  end  end

Legend:
Removed from v.339  
changed lines
  Added in v.340

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