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 /smlnj-lib/branches/rt-transition/PP/src/pp-desc-sig.sml
ViewVC logotype

Diff of /smlnj-lib/branches/rt-transition/PP/src/pp-desc-sig.sml

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

revision 10, Sun Jan 18 01:01:29 1998 UTC revision 411, Fri Sep 3 00:25:03 1999 UTC
# Line 7  Line 7 
7    
8  signature PP_DESC =  signature PP_DESC =
9    sig    sig
10      type box      structure PPS : PP_STREAM
11    
12      type token      type pp_desc = PPS.pp_desc
13          (* tokens are an abstraction of strings (allowing for different      type token = PPS.token
14           * widths and style information).      type style = PPS.style
15           *)      type indent = PPS.indent
16      type style  
17        val hBox    : pp_desc list -> pp_desc
18      datatype indent      val vBox    : (indent * pp_desc list) -> pp_desc
19        = Abs of int              (* indent relative to outer indentation *)      val hvBox   : (indent * pp_desc list) -> pp_desc
20        | Rel of int              (* indent relative to start of box *)      val hovBox  : (indent * pp_desc list) -> pp_desc
21        val box     : (indent * pp_desc list) -> pp_desc
     val hBox    : box list -> box  
     val vBox    : (indent * box list) -> box  
     val hvBox   : (indent * box list) -> box  
     val hovBox  : (indent * box list) -> box  
     val box     : (indent * box list) -> box  
22    
23      val token   : token -> box      val token   : token -> pp_desc
24      val string  : string -> box      val string  : string -> pp_desc
25    
26      val style   : (style * box list) -> box      val style   : (style * pp_desc list) -> pp_desc
27    
28      val break   : {nsp : int, offset : int} -> box      val break   : {nsp : int, offset : int} -> pp_desc
29      val space   : int -> box      val space   : int -> pp_desc
30          (* space n == break{nsp=n, offset=0} *)          (* space n == break{nsp=n, offset=0} *)
31      val cut     : box      val cut     : pp_desc
32          (* cut == break{nsp=0, offset=0} *)          (* cut == break{nsp=0, offset=0} *)
33      val newline : box      val newline : pp_desc
34    
35      val onNewline : box -> box      val control : (PPS.device -> unit) -> pp_desc
         (* the box is emitted iff it is preceeded by a newline *)  
36    
37    end    end
38    

Legend:
Removed from v.10  
changed lines
  Added in v.411

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