Advertisement
qqn

Untitled

qqn
Feb 5th, 2018
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
OCaml 1.82 KB | None | 0 0
  1. let rec display_html (tr:html_tree) =
  2.   match tr with
  3.   |Empty -> failwith("Empty")
  4.   |Html(_, l)-> display_html_list l
  5.   |Head(_,l) -> display_html_list l
  6.   |Body(_,l) -> display_html_list l
  7.   |P(_,l) -> display_html_list l
  8.   |B(_,l) -> display_html_list l
  9.   |I(_,l) -> display_html_list l
  10.   |U(_,l) -> display_html_list l
  11.   |Font(_,l) -> display_html_list l
  12.   |A(_,l)  -> display_html_list l
  13.   |H1(_,l) -> display_html_list l
  14.   |H2(_,l) -> display_html_list l
  15.   |H3(_,l) -> display_html_list l
  16.   |H4(_,l) -> display_html_list l
  17.   |H5(_,l) -> display_html_list l
  18.   |Center(_,l) -> display_html_list l
  19.   |Title(_,l) -> display_html_list state l
  20.   |Word(s)-> (*how to insert strings into a list and go to next iteration*)
  21. let display_html_list (ltr:html_tree list) =
  22.   let rec load stack = function
  23.     | [] -> stack
  24.         | Empty::r -> failwith("Empty")
  25.     | Html(a, l)::r -> load (Html(a,l)::stack) r
  26.     | Head(a,l)::r ->load (Head (a,l):: stack) r
  27.     | Body(a,l)::r -> load (Body (a,l):: stack) r
  28.     | P(a,l)::r -> load (P (a,l):: stack) r
  29.     | B(a,l)::r -> load (B (a,l):: stack) r
  30.     | I(a,l)::r -> load (I (a,l):: stack) r
  31.     | U(a,l)::r -> load (U (a,l):: stack) r
  32.     | Font(a,l)::r -> load (Font (a,l):: stack) r
  33.     | A(a,l)::r -> load  (A (a,l):: stack) r
  34.     | H1(a,l)::r -> load (H1 (a,l):: stack) r
  35.     | H2(a,l)::r -> load (H2 (a,l):: stack) r
  36.     | H3(a,l)::r -> load (H3 (a,l):: stack) r
  37.     | H4(a,l)::r -> load (H4 (a,l):: stack) r
  38.     | H5(a,l)::r -> load (H5 (a,l):: stack) r
  39.     | Center(a,l)::r -> load (Center (a,l):: stack) r
  40.     | Title(a,l)::r -> load (Title (a,l):: stack) r
  41.         | Word(s)::r -> (*how to insert strings into a list and go to next iteration??*)
  42.   in
  43.   match load [] ltr with
  44.     | res :: [] -> res
  45.     | [] -> failwith "no input"
  46.     |_ :: _ -> failwith "remaining nodes"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement