src/Pure/Isar/outer_parse.ML
changeset 5960 2bebd0d0a961
parent 5940 33bdc03bba7e
child 6003 b382568901f6
equal deleted inserted replaced
5959:7af99477751b 5960:2bebd0d0a961
    31   val list: (token list -> 'a * token list) -> token list -> 'a list * token list
    31   val list: (token list -> 'a * token list) -> token list -> 'a list * token list
    32   val list1: (token list -> 'a * token list) -> token list -> 'a list * token list
    32   val list1: (token list -> 'a * token list) -> token list -> 'a list * token list
    33   val name: token list -> bstring * token list
    33   val name: token list -> bstring * token list
    34   val xname: token list -> xstring * token list
    34   val xname: token list -> xstring * token list
    35   val text: token list -> string * token list
    35   val text: token list -> string * token list
       
    36   val comment: token list -> string * token list
    36   val sort: token list -> xsort * token list
    37   val sort: token list -> xsort * token list
    37   val arity: token list -> (xsort list * xsort) * token list
    38   val arity: token list -> (xsort list * xsort) * token list
    38   val type_args: token list -> string list * token list
    39   val type_args: token list -> string list * token list
    39   val typ: token list -> string * token list
    40   val typ: token list -> string * token list
    40   val opt_infix: token list -> Syntax.mixfix * token list
    41   val opt_infix: token list -> Syntax.mixfix * token list
   131 
   132 
   132 fun list1 scan = enum1 "," scan;
   133 fun list1 scan = enum1 "," scan;
   133 fun list scan = enum "," scan;
   134 fun list scan = enum "," scan;
   134 
   135 
   135 
   136 
   136 (* names *)
   137 (* names and text *)
   137 
   138 
   138 val name = group "name declaration" (short_ident || sym_ident || string);
   139 val name = group "name declaration" (short_ident || sym_ident || string);
   139 val xname = group "name reference" (short_ident || long_ident || sym_ident || string);
   140 val xname = group "name reference" (short_ident || long_ident || sym_ident || string);
   140 val text = group "text" (short_ident || long_ident || string || verbatim);
   141 val text = group "text" (short_ident || long_ident || string || verbatim);
       
   142 val comment = Scan.optional ($$$ "--" |-- text) "";
   141 
   143 
   142 
   144 
   143 (* sorts *)
   145 (* sorts *)
   144 
   146 
   145 val sort =
   147 val sort =