package boltzgen

  1. Overview
  2. Docs
type qcm =
  1. | A
  2. | B
  3. | C
  4. | D
val string_of_qcm : qcm -> string
val qcm_of_string : string -> qcm
val qcm_of_int : int -> qcm
type qlist = int list
val qlist_of_string : string -> qlist
val canonize_qlist : qlist -> qlist
val iter_hash : int -> int -> int
val hash_string : string -> int
type question_value = {
  1. text : string;
  2. proposed_answer : string array;
  3. rtype : Type.compo_type;
  4. answer : string;
  5. test_effort : int;
  6. test_max : int;
}
type question_type = {
  1. text : string;
  2. answer : string;
}
type question =
  1. | Value of question_value
  2. | Type of question_type
type question_bank = {
  1. questions : question array;
  2. digest : Stdlib.Digest.t;
  3. shuffle : string option;
}
val mkqcm : string -> string list -> qcm -> question
val mkfun : ?test_effort:int -> ?test_max:int -> string -> string -> string -> string list -> question
val mkdeftype : string -> string -> question
val shuffle : string -> question_bank -> question_bank
val save_qbank : string -> question_bank -> unit
val load_qbank : string -> question_bank