src/Pure/Isar/class_declaration.ML
changeset 81116 0fb1e2dd4122
parent 79438 032ca41f590a
equal deleted inserted replaced
81115:7b3b27576f45 81116:0fb1e2dd4122
     6 
     6 
     7 signature CLASS_DECLARATION =
     7 signature CLASS_DECLARATION =
     8 sig
     8 sig
     9   val class: binding -> Bundle.name list -> class list ->
     9   val class: binding -> Bundle.name list -> class list ->
    10     Element.context_i list -> theory -> string * local_theory
    10     Element.context_i list -> theory -> string * local_theory
    11   val class_cmd: binding -> (xstring * Position.T) list -> xstring list ->
    11   val class_cmd: binding -> Bundle.xname list -> xstring list ->
    12     Element.context list -> theory -> string * local_theory
    12     Element.context list -> theory -> string * local_theory
    13   val prove_subclass: tactic -> class ->
    13   val prove_subclass: tactic -> class ->
    14     local_theory -> local_theory
    14     local_theory -> local_theory
    15   val subclass: class -> local_theory -> Proof.state
    15   val subclass: class -> local_theory -> Proof.state
    16   val subclass_cmd: xstring -> local_theory -> Proof.state
    16   val subclass_cmd: xstring -> local_theory -> Proof.state
   261     val (elems, global_syntax) = fold_map fork_syn syntax_elems [];
   261     val (elems, global_syntax) = fold_map fork_syn syntax_elems [];
   262 
   262 
   263   in (((sups, supparam_names), (sup_sort, base_sort, supexpr)), (includes, elems, global_syntax)) end;
   263   in (((sups, supparam_names), (sup_sort, base_sort, supexpr)), (includes, elems, global_syntax)) end;
   264 
   264 
   265 val cert_class_spec = prep_class_spec (K I) (K I) cert_class_elems;
   265 val cert_class_spec = prep_class_spec (K I) (K I) cert_class_elems;
   266 val read_class_spec = prep_class_spec Proof_Context.read_class Bundle.check read_class_elems;
   266 val read_class_spec = prep_class_spec Proof_Context.read_class Bundle.check_name read_class_elems;
   267 
   267 
   268 
   268 
   269 (* class establishment *)
   269 (* class establishment *)
   270 
   270 
   271 fun add_consts class base_sort sups supparam_names global_syntax thy =
   271 fun add_consts class base_sort sups supparam_names global_syntax thy =