src/Pure/Isar/comment.ML
author wenzelm
Mon, 06 Mar 2000 21:10:27 +0100
changeset 8351 1b8ac0f48233
parent 8076 ef78716f39ef
child 8807 0046be1769f9
permissions -rw-r--r--
added simple_args; added 'tactic' method;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6549
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
     1
(*  Title:      Pure/Isar/comment.ML
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
     2
    ID:         $Id$
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
     3
    Author:     Markus Wenzel, TU Muenchen
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
     4
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
     5
Formal comments.
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
     6
*)
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
     7
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
     8
signature COMMENT =
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
     9
sig
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    10
  type text
7631
1b6b51b17c4a added string_of: text -> string;
wenzelm
parents: 7171
diff changeset
    11
  val string_of: text -> string
8076
ef78716f39ef text: string list;
wenzelm
parents: 7631
diff changeset
    12
  val plain: string list -> text
6725
b91772e592dc renamed empty to none;
wenzelm
parents: 6549
diff changeset
    13
  val none: text
b91772e592dc renamed empty to none;
wenzelm
parents: 6549
diff changeset
    14
  val ignore: 'a * text -> 'a
6549
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    15
  type interest
7171
2a245a80a2c5 improved interest;
wenzelm
parents: 6725
diff changeset
    16
  val interest: int -> interest
6549
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    17
  val no_interest: interest
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    18
  val default_interest: interest
6725
b91772e592dc renamed empty to none;
wenzelm
parents: 6549
diff changeset
    19
  val ignore_interest: 'a * interest -> 'a
b91772e592dc renamed empty to none;
wenzelm
parents: 6549
diff changeset
    20
  val ignore_interest': interest * 'a -> 'a
6549
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    21
end;
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    22
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    23
structure Comment: COMMENT =
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    24
struct
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    25
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    26
(** text **)
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    27
8076
ef78716f39ef text: string list;
wenzelm
parents: 7631
diff changeset
    28
datatype text = Text of string list;
7631
1b6b51b17c4a added string_of: text -> string;
wenzelm
parents: 7171
diff changeset
    29
8076
ef78716f39ef text: string list;
wenzelm
parents: 7631
diff changeset
    30
fun string_of (Text ss) = cat_lines ss;
6549
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    31
val plain = Text;
8076
ef78716f39ef text: string list;
wenzelm
parents: 7631
diff changeset
    32
val none = plain [];
6725
b91772e592dc renamed empty to none;
wenzelm
parents: 6549
diff changeset
    33
b91772e592dc renamed empty to none;
wenzelm
parents: 6549
diff changeset
    34
fun ignore (x, _) = x;
b91772e592dc renamed empty to none;
wenzelm
parents: 6549
diff changeset
    35
6549
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    36
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    37
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    38
(** interest **)
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    39
7171
2a245a80a2c5 improved interest;
wenzelm
parents: 6725
diff changeset
    40
datatype interest = Interest of int;
2a245a80a2c5 improved interest;
wenzelm
parents: 6725
diff changeset
    41
val interest = Interest;
2a245a80a2c5 improved interest;
wenzelm
parents: 6725
diff changeset
    42
val no_interest = interest ~1;
2a245a80a2c5 improved interest;
wenzelm
parents: 6725
diff changeset
    43
val default_interest = interest 0;
6549
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    44
6725
b91772e592dc renamed empty to none;
wenzelm
parents: 6549
diff changeset
    45
fun ignore_interest (x, _) = x;
b91772e592dc renamed empty to none;
wenzelm
parents: 6549
diff changeset
    46
fun ignore_interest' (_, x) = x;
b91772e592dc renamed empty to none;
wenzelm
parents: 6549
diff changeset
    47
b91772e592dc renamed empty to none;
wenzelm
parents: 6549
diff changeset
    48
6549
90fa592f6e6e added Isar/comment.ML;
wenzelm
parents:
diff changeset
    49
end;