package daypack-lib

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Source file task_t.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
(* Auto-generated from "task.atd" *)
[@@@ocaml.warning "-27-32-33-35-39"]

type int64 = Int64_t.int64

type user_id = int64

type time_slot = Time_slot_t.time_slot

type time_pattern = Time_pattern_t.time_pattern

type task_seg_size = int64

type task_inst_type = [
    `Reminder
  | `Reminder_quota_counting of int64
  | `Passing
]

type task_inst_data = { task_inst_type: task_inst_type }

type ('a, 'b, 'c) sched_req_data_unit_skeleton =
  ('a, 'b, 'c) Sched_req_data_unit_skeleton_t.sched_req_data_unit_skeleton

type sched_req_template_data_unit =
  (task_seg_size, int64, time_slot) sched_req_data_unit_skeleton

type sched_req_template = sched_req_template_data_unit list

type recur_data = {
  task_inst_data: task_inst_data;
  sched_req_template: sched_req_template
}

type arith_seq = { start: int64; end_exc: int64 option; diff: int64 }

type recur_type = [
    `Arithmetic_seq of (arith_seq * recur_data)
  | `Time_pattern_match of (time_pattern * recur_data)
]

type recur = { excluded_time_slots: time_slot list; recur_type: recur_type }

type task_type = [ `One_off | `Recurring of recur ]

type task_seg_id = (user_id * int64 * int64 * int64 * int64 option)

type task_seg_place = (task_seg_id * int64 * int64)

type task_inst_id = (user_id * int64 * int64)

type task_seg_alloc_req = (task_inst_id * task_seg_size)

type task_seg = (task_seg_id * task_seg_size)

type task_inst = (task_inst_id * task_inst_data)

type task_id = (user_id * int64)

type task_data = {
  splittable: bool;
  parallelizable: bool;
  task_type: task_type;
  name: string
}

type task = (task_id * task_data)

type progress = { chunks: (int64 * int64) list }
OCaml

Innovation. Community. Security.