aboutsummaryrefslogtreecommitdiff
path: root/motus/js/state.ml
diff options
context:
space:
mode:
Diffstat (limited to 'motus/js/state.ml')
-rw-r--r--motus/js/state.ml22
1 files changed, 10 insertions, 12 deletions
diff --git a/motus/js/state.ml b/motus/js/state.ml
index e2e531d..41a5875 100644
--- a/motus/js/state.ml
+++ b/motus/js/state.ml
@@ -3,18 +3,19 @@ open Motus_lib
type proposition = (Jstr.t * Validity.t) option list
-type state =
- { analysis : Wordlist.t
+type state = {
+ candidates : Wordlist.t
; catalog : Wordlist.t
; rules : Criteria.t list
; length : int
; propositions : proposition list
; current_prop : proposition
; fields : Brr.El.t list
- }
+}
let init () =
- { analysis = Wordlist.empty_data ()
+ {
+ candidates = Wordlist.empty_data ()
; catalog = Wordlist.empty_data ()
; rules = []
; length = 0
@@ -23,7 +24,6 @@ let init () =
; fields = []
}
-
module App = Application.Make (struct
type t = state
end)
@@ -35,17 +35,15 @@ let get_current_rules : proposition -> Criteria.t list =
List.iteri prop ~f:(fun i prop ->
Option.iter
(fun (letter, validity) ->
- if Jstr.equal Jstr.empty letter
- then ()
+ if Jstr.equal Jstr.empty letter then ()
else
let char = String.get (Jstr.to_string letter) 0 in
- rules := Validity.to_criteria char i validity !rules )
- prop );
+ rules := Validity.to_criteria char i validity !rules)
+ prop);
List.rev !rules
-
(** Compare two states *)
let eq : state -> state -> bool =
fun s1 s2 ->
- (s1.length, s1.rules, s1.current_prop, s1.propositions, s1.analysis)
- = (s2.length, s2.rules, s2.current_prop, s2.propositions, s2.analysis)
+ (s1.length, s1.rules, s1.current_prop, s1.propositions, s1.candidates)
+ = (s2.length, s2.rules, s2.current_prop, s2.propositions, s2.candidates)