module Student: sig
.. end
The student data type.
module H: Assoc.H
type
resp =
| |
Capt |
| |
Secr |
| |
Prog |
| |
Zero |
type
s_team = {
}
val make_steam : ?proj:Base.paddress ->
?n:int ->
?r:resp -> ?a:int -> ?c:float -> ?g:float -> unit -> s_team
val empty_team : s_team
val update_coeff : s_team -> float -> s_team
val update_grade : s_team -> float -> s_team
type
student = {
|
name : string ; |
|
pren : string ; |
|
login : string ; |
|
group : int ; |
|
teams : (Base.paddress, s_team) H.t ; |
|
mutable numt : int ; |
|
mutable numc : int ; |
|
mutable nums : int ; |
|
mutable team : int ; |
}
val new_teams : unit -> (Base.paddress, s_team) H.t
val new_student : string -> string -> string -> int -> student
val student_list : student list ref
val num_to_color : int -> string
val _resp : student -> Base.paddress -> resp
val _team : student -> Base.paddress -> int
val _absc : student -> Base.paddress -> int
val student_absc : student -> Base.paddress -> int
val student_resp : student -> Base.paddress -> resp
val student_team : student -> Base.paddress -> int
val student_grade : student -> Base.paddress -> float
val resp_to_string : resp -> string
val resp_to_full_string : resp -> string
val string_to_resp : string -> resp
val string_to_sort : string -> Base.sort
val string_of_sort : Base.sort -> string
val set_resp : student ->
Base.paddress ->
int -> resp -> ?abs:int -> ?grad:float -> unit -> unit
val find_student : student list -> String.t -> student
val give_mark_to_team : int -> Base.paddress -> int -> float -> unit
val give_mark_to_student : String.t -> Base.paddress -> float -> unit
val sort_student_list : Base.sort -> unit
val get_multip_resp : resp ->
student list -> int -> Base.paddress -> int -> student list
val get_unique_resp : resp ->
student list -> int -> Base.paddress -> int -> student
val get_captains : student list -> int -> Base.paddress -> int -> student list
val get_secretaries : student list -> int -> Base.paddress -> int -> student list
val get_progs : student list -> int -> Base.paddress -> int -> student list
val get_team : student list -> int -> Base.paddress -> int -> student list
val get_all_project_addresses_for : student list -> Base.paddress list
type
compar =
| |
Superior of int |
| |
Inferior of int |
| |
Between of (int * int) |
type
valid = (resp * compar) list
val ref_validity : valid ref
val valid_to_string : (resp * compar) list -> string
val string_to_valid : string -> (resp * compar) list
val is_team_valid : valid ->
student list -> int -> Base.paddress -> int -> bool * string
val valid_base : (resp * compar) list
val valid_resp : (resp * compar) list
val project_mean : student list -> int -> Base.paddress -> float
val belong_to_same_team_as : student -> student -> Base.paddress -> bool
val student_mean : student -> float
val group_mean : int -> float
val update_student_coeffs : student list -> student -> Base.paddress list -> unit
val student_corrected_mean : student -> float
val next_value : int list -> int -> int option
val next_counter : int list -> int list -> int list
val find_all_counters : int list -> int -> int list list
val select : ('a -> bool) -> 'a list -> 'a list
val apply_goal : Base.goal -> (int * 'a) list -> int * 'a
val find_team_numbers : Base.goal -> int list -> int -> (int * int) list
type
criterion = student -> int -> int -> Base.paddress -> bool
val crit_base : student -> 'a -> int -> Base.paddress -> bool
val crit_secr : student -> int -> int -> Base.paddress -> bool
val crit_capt : student -> int -> int -> Base.paddress -> bool
val find_random_member_by_group : criterion ->
student list -> int -> Base.paddress -> student
val find_resp_by_group_project : student list ->
int ->
Base.paddress ->
resp -> criterion -> (int * int) list -> unit
val find_members_of_group_project : student list -> int -> Base.paddress -> unit
val update_groups_size : student list -> unit