Skip to content

Commit 878105f

Browse files
author
dwRchyngqxs
committed
Merge all grammar modifications to backup once for all
1 parent 87de30f commit 878105f

File tree

1 file changed

+16
-54
lines changed

1 file changed

+16
-54
lines changed

src/TeX/mungeTools.sml

Lines changed: 16 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -369,43 +369,19 @@ in
369369
]
370370
end
371371

372-
fun clear_overloads slist f = let
373-
val tyg = type_grammar()
374-
val oldg = term_grammar()
375-
val _ = List.app temp_clear_overloads_on slist
376-
val _ = List.map hide slist
377-
val newg = term_grammar()
372+
fun modify_grammar unoverloads unabbrevs overloads abbrevs f = let
373+
val oldtyg = type_grammar()
374+
val oldtmg = term_grammar()
375+
val _ = List.app temp_clear_overloads_on unoverloads
376+
val _ = List.map hide unoverloads
377+
val _ = List.app temp_disable_tyabbrev_printing unabbrevs
378+
val _ = List.app temp_type_abbrev_pp abbrevs
379+
val _ = List.app temp_overload_on overloads
380+
val newtmg = term_grammar()
381+
val newtyg = type_grammar()
378382
in
379-
(fn x => (temp_set_grammars(tyg,newg);
380-
f x before temp_set_grammars(tyg,oldg)))
381-
end
382-
fun clear_abbrevs slist f = let
383-
val oldg = type_grammar()
384-
val tmg = term_grammar()
385-
val _ = List.app temp_disable_tyabbrev_printing slist
386-
val newg = type_grammar()
387-
in
388-
(fn x => (temp_set_grammars(newg,tmg);
389-
f x before temp_set_grammars(oldg,tmg)))
390-
end
391-
392-
fun add_overloads slist f = let
393-
val tyg = type_grammar()
394-
val oldg = term_grammar()
395-
val _ = List.app temp_overload_on slist
396-
val newg = term_grammar()
397-
in
398-
(fn x => (temp_set_grammars(tyg,newg);
399-
f x before temp_set_grammars(tyg,oldg)))
400-
end
401-
fun add_abbrevs slist f = let
402-
val oldg = type_grammar()
403-
val tmg = term_grammar()
404-
val _ = List.app temp_type_abbrev_pp slist
405-
val newg = type_grammar()
406-
in
407-
(fn x => (temp_set_grammars(newg,tmg);
408-
f x before temp_set_grammars(oldg,tmg)))
383+
(fn x => (temp_set_grammars(newtyg,newtmg);
384+
f x before temp_set_grammars(oldtyg,oldtmg)))
409385
end
410386

411387
fun optprintermod f =
@@ -425,18 +401,8 @@ in
425401
|> (if OptSet.has Merge opts then
426402
trace ("pp_avoids_symbol_merges", 1)
427403
else (fn f => f))
428-
|> (case optset_unoverloads opts of
429-
[] => (fn f => f)
430-
| slist => clear_overloads slist)
431-
|> (case optset_overloads opts of
432-
[] => (fn f => f)
433-
| olist => add_overloads olist)
434-
|> (case optset_unabbrevs opts of
435-
[] => (fn f => f)
436-
| slist => clear_abbrevs slist)
437-
|> (case optset_abbrevs opts of
438-
[] => (fn f => f)
439-
| alist => add_abbrevs alist)
404+
|> (modify_grammar (optset_unoverloads opts) (optset_unabbrevs opts)
405+
(optset_overloads opts) (optset_abbrevs opts))
440406
|> optset_traces opts
441407

442408
val overrides = let
@@ -450,12 +416,8 @@ in
450416
fun stdtermprint t = optprintermod (raw_pp_term_as_tex overrides) t
451417

452418
fun opttyprintermod f =
453-
f |> (case optset_unabbrevs opts of
454-
[] => (fn f => f)
455-
| slist => clear_abbrevs slist)
456-
|> (case optset_abbrevs opts of
457-
[] => (fn f => f)
458-
| alist => add_abbrevs alist)
419+
f |> (modify_grammar (optset_unoverloads opts) (optset_unabbrevs opts)
420+
(optset_overloads opts) (optset_abbrevs opts))
459421

460422
fun stdtypeprint t = opttyprintermod (raw_pp_type_as_tex overrides) t
461423

0 commit comments

Comments
 (0)