package forester
Source file TeX_like.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22(* * SPDX-FileCopyrightText: 2024 The Forester Project Contributors AND The RedPRL Development Team * * SPDX-License-Identifier: GPL-3.0-or-later OR Apache-2.0 WITH LLVM-exception * *) open Types let rec pp_content fmt = function | Content nodes -> List.iter (pp_content_node fmt) nodes and pp_content_node fmt = function | Text str -> Format.fprintf fmt "%s" str | CDATA str -> Format.fprintf fmt "%s" str | KaTeX (_, xs) -> pp_content fmt xs | Xml_elt _ | Transclude _ | Contextual_number _ | Section _ | Link _ | Artefact _ | Uri _ | Route_of_uri _ | Datalog_script _ | Results_of_datalog_query _ -> Reporter.fatal Internal_error ~extra_remarks: [Asai.Diagnostic.loctextf "Cannot render this kind of content node as TeX-like string"] let string_of_content = Format.asprintf "%a" pp_content