У меня есть следующие определения типов в моем коде:Преобразование имени конструктора в строку в OCaml
type tag =
| Head
| Title
| Body
| H1
| P;;
type domtree =
| Empty
| Node of tag * string * domtree list;;
мне нужно напечатать метки вместе со строками. Но я не смог найти способ конвертировать тег (имена конструктора в определении первого типа) в строки и объединить их со строковой частью domtree. Есть ли какой-либо конкретный способ сделать это? Оказывает ли OCaml способ преобразования нестрочных типов в строки? Я нашел здесь подобный вопрос, но я не совсем понял это.
Прежде всего, вы не должны катавать свое собственное дерево DOM, вы должны просто использовать библиотеку, которая уже делает это. Во-вторых, посмотрите на 'ppx_deriving', так как он делает именно это. –
На самом деле в одном из моих заданий было определено тип domtree. И я новичок в Ocaml, поэтому я не должен использовать ppx_deriving. – Ruwangi
Вы должны написать его прямо тогда, 'let to_string = function | Голова -> «голова» | ... '. – nlucaroni