Module Glt_common.State

type t = {
curr_day : int;
curr_hour : int;
curr_min : int;
started : float;
score : Score.t;
topic : Topic.t;
user : User.t;
users : Users.t;
msg : string;
logs : Logs.t;
cur_pos : int;
ratio : int;
}
exception End_of_day of t
val initial : t
val get_curr_hour : t -> int
val get_curr_min : t -> int
val get_curr_day : t -> int
val get_score : t -> Score.t
val get_topic : t -> Topic.t
val get_user : t -> User.t
val get_users : t -> Users.t
val get_msg : t -> string
val get_logs : t -> Logs.t
val get_started : t -> float
val get_cur_pos : t -> int
val set_curr_min : t -> int -> t
val set_curr_hour : t -> int -> t
val set_curr_day : t -> int -> t
val set_score : t -> Score.t -> t
val set_topic : t -> Topic.t -> t
val set_user : t -> User.t -> t
val set_users : t -> Users.t -> t
val set_logs : t -> Logs.t -> t
val set_msg : t -> string -> t
val set_started : t -> float -> t
val set_cur_pos : t -> int -> t
val remove_msg : t -> t
val send_char_msg : t -> User.t -> string -> t
val send_msg : t -> t
val move_cur_pos_left : t -> t
val move_cur_pos_right : t -> t
val get_curr_time : t -> int * int
val update_time : t -> t
val new_day : t -> t
val post_char_msg : t -> t