1 (* Title: generate specific entries into Ctree
3 (c) due to copyright terms
5 This will be dropped at switch to Isabelle/PIDE .
8 signature TEST_OUTPUT =
10 datatype pblmet = MethodC of MethodC.id | Problem of Problem.id | Upblmet
14 | FormKF of TermC.as_string
15 | PpcKF of pblmet * P_Model.T
16 | RefinedKF of Problem.id * (I_Model.T * Pre_Conds.T)
18 type T = Pos.pos' * Pos.pos' list * mout * Ctree.ctree
19 val mout2str: mout -> string
23 structure Test_Out(**): TEST_OUTPUT(**) =
31 | Problem of Problem.id
32 | MethodC of MethodC.id;
33 fun pblmet2str (Problem pblID) = "Problem " ^ strs2str pblID (*%^%*)
34 | pblmet2str (MethodC metID) = "MethodC " ^ MethodC.id_to_string metID (*%^%*)
35 | pblmet2str x = raise ERROR ("pblmet2str: uncovered definition " ^ pblmet2str x)
37 (*3.5.00: TODO: foppFK eliminated in interface FE-KE !!!*)
38 datatype foppFK = (* in DG cases div 2 *)
39 EmptyFoppFK (*DG internal*)
40 | FormFK of TermC.as_string
41 | PpcFK of TermC.as_string P_Model.model
43 datatype nest = Open | Closed | Nundef;
46 datatype edit = EdUndef | Write | Protect;
48 datatype inout = (*FIXME.WN1105 drop this: was required for proto0 with dialog in sml*)
49 Error_ of string (*<--*)
50 | FormKF of cellID * edit * indent * nest * TermC.as_string (*<--*)
51 | PpcKF of cellID * edit * indent * nest * (pblmet * P_Model.T) (*<--*)
52 | RefineKF of M_Match.T list (*<--*)
53 | RefinedKF of (Problem.id * ((I_Model.T) * (Pre_Conds.T))) (*<--*)
56 FormKF of TermC.as_string
57 | PpcKF of (pblmet * P_Model.T)
58 | RefinedKF of Problem.id * (I_Model.T * Pre_Conds.T)
62 fun mout2str (FormKF cterm') = "FormKF " ^ cterm'
63 | mout2str (PpcKF (pm, itemppc)) = "PpcKF (" ^ pblmet2str pm ^ ", " ^ P_Model.to_string itemppc ^ ")"
64 | mout2str (RefinedKF (_, _)) = "mout2str: RefinedKF not impl."
65 | mout2str (Error' str) = "Error' " ^ str
66 | mout2str (EmptyMout ) = "EmptyMout"
68 type T = Pos.pos' * Pos.pos' list * mout * Ctree.ctree;