src/Pure/simplifier.ML
changeset 28863 32e83a854e5e
parent 28792 1d80cee865de
child 28965 1de908189869
equal deleted inserted replaced
28862:53f13f763d4f 28863:32e83a854e5e
   192        identifier = identifier}
   192        identifier = identifier}
   193       |> morph_simproc (LocalTheory.target_morphism lthy);
   193       |> morph_simproc (LocalTheory.target_morphism lthy);
   194   in
   194   in
   195     lthy |> LocalTheory.declaration (fn phi =>
   195     lthy |> LocalTheory.declaration (fn phi =>
   196       let
   196       let
   197         val (naming', name) = Name.namify naming (Morphism.name phi (Name.binding name));
   197         val b' = Morphism.name phi (Name.binding name);
   198         val simproc' = morph_simproc phi simproc;
   198         val simproc' = morph_simproc phi simproc;
   199       in
   199       in
   200         Simprocs.map (fn simprocs =>
   200         Simprocs.map (fn simprocs =>
   201             NameSpace.extend_table naming' [(name, simproc')] simprocs
   201           NameSpace.table_declare naming (b', simproc') simprocs |> snd
   202               handle Symtab.DUP dup => err_dup_simproc dup)
   202             handle Symtab.DUP dup => err_dup_simproc dup)
   203         #> map_ss (fn ss => ss addsimprocs [simproc'])
   203         #> map_ss (fn ss => ss addsimprocs [simproc'])
   204       end)
   204       end)
   205   end;
   205   end;
   206 
   206 
   207 in
   207 in