Packages
timex
3.7.5
3.7.13
3.7.12
3.7.11
3.7.9
3.7.8
3.7.7
3.7.6
3.7.5
3.7.3
3.7.2
3.7.1
3.7.0
3.6.4
3.6.3
3.6.2
retired
3.6.1
3.6.0
3.5.0
3.4.2
3.4.1
3.3.0
3.2.2
3.2.1
3.2.0
3.1.25
retired
3.1.24
3.1.23
3.1.22
3.1.21
3.1.20
3.1.19
3.1.18
3.1.17
3.1.16
3.1.15
3.1.13
3.1.12
3.1.11
3.1.10
3.1.9
3.1.8
3.1.7
3.1.6
3.1.5
3.1.4
3.1.3
3.1.2
3.1.1
3.1.0
3.0.8
3.0.7
3.0.6
3.0.5
3.0.4
3.0.3
3.0.2
3.0.1
3.0.0
2.2.1
2.1.6
2.1.5
2.1.4
2.1.3
2.1.2
2.1.1
2.1.0
2.0.0
1.0.2
1.0.1
1.0.0
1.0.0-rc4
1.0.0-rc3
1.0.0-rc2
1.0.0-rc1
1.0.0-pre
0.19.5
0.19.4
0.19.3
0.19.2
0.19.1
0.19.0
0.18.2
0.18.1
0.18.0
0.17.0
0.16.2
0.16.1
0.16.0
0.15.0
0.14.3
0.14.2
0.14.1
0.14.0
0.13.5
0.13.4
0.13.3
0.13.2
0.13.1
0.13.0
0.12.9
0.12.8
0.12.7
0.12.6
0.12.5
0.12.4
0.12.3
0.12.2
0.12.1
0.12.0
0.11.0
0.10.2
0.10.1
0.10.0
0.9.0
0.8.0
0.7.1
0.6.0
0.5.0
0.4.8
0.4.7
0.4.6
Timex is a rich, comprehensive Date/Time library for Elixir projects, with full timezone support via the :tzdata package. If you need to manipulate dates, times, datetimes, timestamps, etc., then Timex is for you!
Current section
Files
Jump to
Current section
Files
lib/timex/types.ex
defmodule Timex.Types do
# Date types
@type year :: Calendar.year()
@type month :: Calendar.month()
@type day :: Calendar.day()
@type num_of_days :: 28..31
@type daynum :: 1..366
@type week_of_month :: 1..5
@type weekday :: 1..7
@type weeknum :: 1..53
# Time types
@type hour :: Calendar.hour()
@type minute :: Calendar.minute()
@type second :: Calendar.second()
@type microsecond :: Calendar.microsecond()
@type timestamp :: {megaseconds, seconds, microseconds}
@type megaseconds :: non_neg_integer
@type seconds :: non_neg_integer
@type microseconds :: non_neg_integer
# Timezone types
@type time_zone :: Calendar.time_zone()
@type zone_abbr :: Calendar.zone_abbr()
@type utc_offset :: Calendar.utc_offset()
@type std_offset :: Calendar.std_offset()
@type tz_offset :: -14..12
@type valid_timezone :: String.t() | tz_offset | :utc | :local
# Complex types
@type weekday_name ::
:monday | :tuesday | :wednesday | :thursday | :friday | :saturday | :sunday
@type shift_units :: :milliseconds | :seconds | :minutes | :hours | :days | :weeks | :years
@type time_units ::
:microsecond
| :microseconds
| :millisecond
| :milliseconds
| :second
| :seconds
| :minute
| :minutes
| :hour
| :hours
| :day
| :days
| :week
| :weeks
| :year
| :years
@type time :: {hour, minute, second}
@type microsecond_time :: {hour, minute, second, microsecond | microseconds}
@type date :: {year, month, day}
@type datetime :: {date, time}
@type microsecond_datetime :: {date, microsecond_time}
@type iso_triplet :: {year, weeknum, weekday}
@type calendar_types :: Date.t() | DateTime.t() | NaiveDateTime.t() | Time.t()
@type valid_datetime ::
Date.t()
| DateTime.t()
| NaiveDateTime.t()
| Time.t()
| datetime
| date
| microsecond_datetime
@type valid_date :: Date.t() | date
@type valid_time :: Time.t() | time
@type weekstart :: weekday | binary | atom
end