package daypack-lib

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type bound = [
  1. | `Every
  2. | `Next
]
type second_expr = int
type minute_second_expr = {
  1. minute : int;
  2. second : int;
}
type hour_minute_second_expr = {
  1. hour : int;
  2. minute : int;
  3. second : int;
}
type second_range_expr = second_expr Range.range
type minute_second_range_expr = minute_second_expr Range.range
type hour_minute_second_range_expr = hour_minute_second_expr Range.range
type day_expr =
  1. | Weekday of Time.weekday
  2. | Month_day of int
type day_range_expr =
  1. | Weekday_range of Time.weekday_range
  2. | Month_day_range of Time.month_day_range
type month_expr = Time.month
type year_expr = int
type unbounded_time_point_expr =
  1. | Tpe_name of string
  2. | Tpe_unix_seconds of int64 list
  3. | Second of second_expr
  4. | Minute_second of minute_second_expr
  5. | Hour_minute_second of hour_minute_second_expr
  6. | Day_hour_minute_second of {
    1. day : day_expr;
    2. hour_minute_second : hour_minute_second_expr;
    }
  7. | Month_day_hour_minute_second of {
    1. month : month_expr;
    2. month_day : int;
    3. hour_minute_second : hour_minute_second_expr;
    }
  8. | Year_month_day_hour_minute_second of {
    1. year : year_expr;
    2. month : month_expr;
    3. month_day : int;
    4. hour_minute_second : hour_minute_second_expr;
    }
type time_point_expr = bound * unbounded_time_point_expr
type month_weekday_mode =
  1. | First_n of int
  2. | Last_n of int
type unbounded_time_slot_expr =
  1. | Tse_name of string
  2. | Explicit_time_slot of unbounded_time_point_expr * unbounded_time_point_expr
  3. | Month_days_and_hour_minute_second_ranges of {
    1. month_days : int Range.range list;
    2. hour_minute_second_ranges : hour_minute_second_range_expr list;
    }
  4. | Weekdays_and_hour_minute_second_ranges of {
    1. weekdays : Time.weekday Range.range list;
    2. hour_minute_second_ranges : hour_minute_second_range_expr list;
    }
  5. | Months_and_month_days_and_hour_minute_second_ranges of {
    1. months : month_expr Range.range list;
    2. month_days : int Range.range list;
    3. hour_minute_second_ranges : hour_minute_second_range_expr list;
    }
  6. | Months_and_weekdays_and_hour_minute_second_ranges of {
    1. months : month_expr Range.range list;
    2. weekdays : Time.weekday Range.range list;
    3. hour_minute_second_ranges : hour_minute_second_range_expr list;
    }
  7. | Months_and_weekday_and_hour_minute_second_ranges of {
    1. months : month_expr Range.range list;
    2. weekday : Time.weekday;
    3. hour_minute_second_ranges : hour_minute_second_range_expr list;
    4. month_weekday_mode : month_weekday_mode option;
    }
  8. | Years_and_months_and_month_days_and_hour_minute_second_ranges of {
    1. years : int Range.range list;
    2. months : month_expr Range.range list;
    3. month_days : int Range.range list;
    4. hour_minute_second_ranges : hour_minute_second_range_expr list;
    }
type time_slot_expr = bound * unbounded_time_slot_expr
type unary_op =
  1. | Not
type binary_op =
  1. | Union
  2. | Inter
type t =
  1. | Time_point_expr of time_point_expr
  2. | Time_slot_expr of time_slot_expr
  3. | Time_pattern of Time_pattern.time_pattern
  4. | Time_unary_op of unary_op * t
  5. | Time_binary_op of binary_op * t * t
  6. | Time_round_robin_select of t list
OCaml

Innovation. Community. Security.