src/Pure/Isar/local_theory.ML
changeset 33095 bbd52d2f8696
parent 30578 9863745880db
child 33157 56f836b9414f
equal deleted inserted replaced
33094:ef0d77b1e687 33095:bbd52d2f8696
    15   val set_group: string -> local_theory -> local_theory
    15   val set_group: string -> local_theory -> local_theory
    16   val target_of: local_theory -> Proof.context
    16   val target_of: local_theory -> Proof.context
    17   val raw_theory_result: (theory -> 'a * theory) -> local_theory -> 'a * local_theory
    17   val raw_theory_result: (theory -> 'a * theory) -> local_theory -> 'a * local_theory
    18   val raw_theory: (theory -> theory) -> local_theory -> local_theory
    18   val raw_theory: (theory -> theory) -> local_theory -> local_theory
    19   val checkpoint: local_theory -> local_theory
    19   val checkpoint: local_theory -> local_theory
    20   val full_naming: local_theory -> NameSpace.naming
    20   val full_naming: local_theory -> Name_Space.naming
    21   val full_name: local_theory -> binding -> string
    21   val full_name: local_theory -> binding -> string
    22   val theory_result: (theory -> 'a * theory) -> local_theory -> 'a * local_theory
    22   val theory_result: (theory -> 'a * theory) -> local_theory -> 'a * local_theory
    23   val theory: (theory -> theory) -> local_theory -> local_theory
    23   val theory: (theory -> theory) -> local_theory -> local_theory
    24   val target_result: (Proof.context -> 'a * Proof.context) -> local_theory -> 'a * local_theory
    24   val target_result: (Proof.context -> 'a * Proof.context) -> local_theory -> 'a * local_theory
    25   val target: (Proof.context -> Proof.context) -> local_theory -> local_theory
    25   val target: (Proof.context -> Proof.context) -> local_theory -> local_theory
   137 
   137 
   138 val checkpoint = raw_theory Theory.checkpoint;
   138 val checkpoint = raw_theory Theory.checkpoint;
   139 
   139 
   140 fun full_naming lthy =
   140 fun full_naming lthy =
   141   Sign.naming_of (ProofContext.theory_of lthy)
   141   Sign.naming_of (ProofContext.theory_of lthy)
   142   |> NameSpace.mandatory_path (#theory_prefix (get_lthy lthy));
   142   |> Name_Space.mandatory_path (#theory_prefix (get_lthy lthy));
   143 
   143 
   144 fun full_name naming = NameSpace.full_name (full_naming naming);
   144 fun full_name naming = Name_Space.full_name (full_naming naming);
   145 
   145 
   146 fun theory_result f lthy = lthy |> raw_theory_result (fn thy => thy
   146 fun theory_result f lthy = lthy |> raw_theory_result (fn thy => thy
   147   |> Sign.mandatory_path (#theory_prefix (get_lthy lthy))
   147   |> Sign.mandatory_path (#theory_prefix (get_lthy lthy))
   148   |> f
   148   |> f
   149   ||> Sign.restore_naming thy);
   149   ||> Sign.restore_naming thy);