src/Pure/Isar/isar_syn.ML
changeset 15531 08c8dad8e399
parent 15432 f04179b1454b
child 15570 8d8c70b41bab
equal deleted inserted replaced
15530:6f43714517ee 15531:08c8dad8e399
   184 
   184 
   185 val structs =
   185 val structs =
   186   Scan.optional ((P.$$$ "(" -- P.$$$ "structure") |-- P.!!! (vars --| P.$$$ ")")) [];
   186   Scan.optional ((P.$$$ "(" -- P.$$$ "structure") |-- P.!!! (vars --| P.$$$ ")")) [];
   187 
   187 
   188 val constdecl =
   188 val constdecl =
   189   (P.name --| P.$$$ "where") >> (fn x => (x, None, Syntax.NoSyn)) ||
   189   (P.name --| P.$$$ "where") >> (fn x => (x, NONE, Syntax.NoSyn)) ||
   190     P.name -- (P.$$$ "::" |-- P.!!! P.typ >> Some) -- P.opt_mixfix' >> P.triple1 ||
   190     P.name -- (P.$$$ "::" |-- P.!!! P.typ >> SOME) -- P.opt_mixfix' >> P.triple1 ||
   191     P.name -- (P.mixfix' >> pair None) >> P.triple2;
   191     P.name -- (P.mixfix' >> pair NONE) >> P.triple2;
   192 
   192 
   193 val constdef = Scan.option constdecl -- (P.opt_thm_name ":" -- P.prop);
   193 val constdef = Scan.option constdecl -- (P.opt_thm_name ":" -- P.prop);
   194 
   194 
   195 val constdefsP =
   195 val constdefsP =
   196   OuterSyntax.command "constdefs" "standard constant definitions" K.thy_decl
   196   OuterSyntax.command "constdefs" "standard constant definitions" K.thy_decl