package daypack-lib

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type arith_seq = {
  1. start : int64;
  2. end_exc : int64 option;
  3. diff : int64;
}
type user_id = int64
and task_id = user_id * int64
and task_inst_id = user_id * int64 * int64
and task_seg_id = user_id * int64 * int64 * int64 * int64 option
type task = task_id * task_data
and task_data = {
  1. splittable : bool;
  2. parallelizable : bool;
  3. task_type : task_type;
  4. name : string;
}
and task_type =
  1. | One_off
  2. | Recurring of recur
and recur_type =
  1. | Arithemtic_seq of arith_seq * recur_data
  2. | Time_pattern_match of Time_pattern.time_pattern * recur_data
and recur = {
  1. excluded_time_slots : Time_slot.t list;
  2. recur_type : recur_type;
}
and sched_req_template_data_unit = (task_seg_size, int64, Time_slot.t) Sched_req_data_unit_skeleton.t
and sched_req_template = sched_req_template_data_unit list
and recur_data = {
  1. task_inst_data : task_inst_data;
  2. sched_req_template : sched_req_template;
}
and task_inst = task_inst_id * task_inst_data
and task_inst_data = {
  1. task_inst_type : task_inst_type;
}
and task_inst_type =
  1. | Reminder
  2. | Reminder_quota_counting of {
    1. quota : int64;
    }
  3. | Passing
and task_seg = task_seg_id * task_seg_size
and task_seg_alloc_req = task_inst_id * task_seg_size
and task_seg_size = int64
and task_seg_place = task_seg_id * int64 * int64
and progress = {
  1. chunks : Int64_int64_set.t;
}
module Id : sig ... end
val task_seg_alloc_req_sum_length : ('a * int64) list -> int64
val sched_req_template_bound_on_start_and_end_exc : sched_req_template -> (int64 * int64) option
module Check : sig ... end
module Serialize : sig ... end
module Deserialize : sig ... end
module To_string : sig ... end
module Print : sig ... end