src/Pure/General/markup.ML
changeset 30221 14145e81a2fe
parent 29522 793766d4c1b5
child 30614 845bcfd3e9cd
equal deleted inserted replaced
30220:11373ba06bf0 30221:14145e81a2fe
    10   val none: T
    10   val none: T
    11   val is_none: T -> bool
    11   val is_none: T -> bool
    12   val properties: (string * string) list -> T -> T
    12   val properties: (string * string) list -> T -> T
    13   val nameN: string
    13   val nameN: string
    14   val name: string -> T -> T
    14   val name: string -> T -> T
       
    15   val bindingN: string val binding: string -> T
    15   val groupN: string
    16   val groupN: string
    16   val theory_nameN: string
    17   val theory_nameN: string
    17   val idN: string
       
    18   val kindN: string
    18   val kindN: string
    19   val internalK: string
    19   val internalK: string
    20   val property_internal: Properties.property
    20   val property_internal: Properties.property
    21   val lineN: string
    21   val lineN: string
    22   val columnN: string
    22   val columnN: string
    23   val offsetN: string
    23   val offsetN: string
    24   val end_lineN: string
    24   val end_lineN: string
    25   val end_columnN: string
    25   val end_columnN: string
    26   val end_offsetN: string
    26   val end_offsetN: string
    27   val fileN: string
    27   val fileN: string
       
    28   val idN: string
    28   val position_properties': string list
    29   val position_properties': string list
    29   val position_properties: string list
    30   val position_properties: string list
    30   val positionN: string val position: T
    31   val positionN: string val position: T
    31   val locationN: string val location: T
    32   val locationN: string val location: T
    32   val indentN: string
    33   val indentN: string
   105 end;
   106 end;
   106 
   107 
   107 structure Markup: MARKUP =
   108 structure Markup: MARKUP =
   108 struct
   109 struct
   109 
   110 
       
   111 (** markup elements **)
       
   112 
   110 (* basic markup *)
   113 (* basic markup *)
   111 
   114 
   112 type T = string * Properties.T;
   115 type T = string * Properties.T;
   113 
   116 
   114 val none = ("", []);
   117 val none = ("", []);
   127 
   130 
   128 (* name *)
   131 (* name *)
   129 
   132 
   130 val nameN = "name";
   133 val nameN = "name";
   131 fun name a = properties [(nameN, a)];
   134 fun name a = properties [(nameN, a)];
       
   135 
       
   136 val (bindingN, binding) = markup_string "binding" nameN;
   132 
   137 
   133 val groupN = "group";
   138 val groupN = "group";
   134 val theory_nameN = "theory_name";
   139 val theory_nameN = "theory_name";
   135 
   140 
   136 
   141 
   276 
   281 
   277 val (promptN, prompt) = markup_elem "prompt";
   282 val (promptN, prompt) = markup_elem "prompt";
   278 
   283 
   279 
   284 
   280 
   285 
   281 (* print mode operations *)
   286 (** print mode operations **)
   282 
   287 
   283 val no_output = ("", "");
   288 val no_output = ("", "");
   284 fun default_output (_: T) = no_output;
   289 fun default_output (_: T) = no_output;
   285 
   290 
   286 local
   291 local