chron

package module
v0.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 16, 2018 License: MIT Imports: 5 Imported by: 0

README

chron

it's time.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Comparable

type Comparable interface {
	Before(Span) bool
	After(Span) bool
	Contains(Span) bool
}

type Day

type Day struct {
	time.Time
}

func DayOf

func DayOf(time time.Time) Day

func NewDay

func NewDay(year int, month time.Month, day int) Day

Constructors

func Today

func Today() Day

func (Day) AddDays

func (d Day) AddDays(ds int) Day

func (Day) AddHours

func (d Day) AddHours(h int) Hour

func (Day) AddMicro

func (d Day) AddMicro(m int) Micro

func (Day) AddMillis

func (d Day) AddMillis(m int) Milli

func (Day) AddMinutes

func (d Day) AddMinutes(m int) Minute

func (Day) AddMonths

func (d Day) AddMonths(m int) Day

needs a global setting. i.e. july 31 - 1 month

func (Day) AddN

func (d Day) AddN(n int) Day

func (Day) AddNano

func (d Day) AddNano(n int) TimeExact

func (Day) AddSeconds

func (d Day) AddSeconds(s int) Second

func (Day) AddYears

func (d Day) AddYears(y int) Day

func (Day) After

func (d Day) After(t Span) bool

func (Day) AsDay

func (d Day) AsDay() Day

func (Day) AsHour

func (d Day) AsHour() Hour

func (Day) AsMicro

func (d Day) AsMicro() Micro

func (Day) AsMilli

func (d Day) AsMilli() Milli

func (Day) AsMinute

func (d Day) AsMinute() Minute

func (Day) AsMonth

func (d Day) AsMonth() Month

func (Day) AsSecond

func (d Day) AsSecond() Second

func (Day) AsTime

func (d Day) AsTime() time.Time

func (Day) AsTimeExact

func (d Day) AsTimeExact() TimeExact

func (Day) AsYear

func (d Day) AsYear() Year

chron.Time implementation

func (Day) Before

func (d Day) Before(t Span) bool

func (Day) Contains

func (d Day) Contains(t Span) bool

func (Day) Decrement

func (d Day) Decrement(t dura.Time) TimeExact

func (Day) Duration

func (d Day) Duration() dura.Time

func (Day) End

func (d Day) End() TimeExact

func (Day) Increment

func (d Day) Increment(t dura.Time) TimeExact

func (*Day) Scan

func (d *Day) Scan(value interface{}) error

func (Day) Start

func (d Day) Start() TimeExact

span.Time implementation

func (Day) Value

func (d Day) Value() (driver.Value, error)

type Filter

type Filter struct {
	// contains filtered or unexported fields
}

func NewFilter

func NewFilter(fn FilterFunc, priority int, invert bool) *Filter

func (Filter) Check

func (f Filter) Check(t Time) (filtered bool, span Span)

func (Filter) Priority

func (f Filter) Priority() int

type FilterFunc

type FilterFunc func(Time) (filtered bool, span Span)

Filter

type Hour

type Hour struct {
	time.Time
}

func HourOf

func HourOf(time time.Time) Hour

func NewHour

func NewHour(year int, month time.Month, day, hour int) Hour

func ThisHour

func ThisHour() Hour

func (Hour) AddDays

func (h Hour) AddDays(d int) Hour

func (Hour) AddHours

func (h Hour) AddHours(hs int) Hour

func (Hour) AddMicro

func (h Hour) AddMicro(m int) Micro

func (Hour) AddMillis

func (h Hour) AddMillis(m int) Milli

func (Hour) AddMinutes

func (h Hour) AddMinutes(m int) Minute

func (Hour) AddMonths

func (h Hour) AddMonths(m int) Hour

func (Hour) AddN

func (h Hour) AddN(n int) Hour

func (Hour) AddNano

func (h Hour) AddNano(n int) TimeExact

func (Hour) AddSeconds

func (h Hour) AddSeconds(s int) Second

func (Hour) AddYears

func (h Hour) AddYears(y int) Hour

func (Hour) After

func (h Hour) After(t Span) bool

func (Hour) AsDay

func (h Hour) AsDay() Day

func (Hour) AsHour

func (h Hour) AsHour() Hour

func (Hour) AsMicro

func (h Hour) AsMicro() Micro

func (Hour) AsMilli

func (h Hour) AsMilli() Milli

func (Hour) AsMinute

func (h Hour) AsMinute() Minute

func (Hour) AsMonth

func (h Hour) AsMonth() Month

func (Hour) AsSecond

func (h Hour) AsSecond() Second

func (Hour) AsTime

func (h Hour) AsTime() time.Time

func (Hour) AsTimeExact

func (h Hour) AsTimeExact() TimeExact

func (Hour) AsYear

func (h Hour) AsYear() Year

func (Hour) Before

func (h Hour) Before(t Span) bool

func (Hour) Contains

func (h Hour) Contains(t Span) bool

func (Hour) Decrement

func (h Hour) Decrement(l dura.Time) TimeExact

func (Hour) Duration

func (h Hour) Duration() dura.Time

func (Hour) End

func (h Hour) End() TimeExact

func (Hour) Increment

func (h Hour) Increment(l dura.Time) TimeExact

func (*Hour) Scan

func (h *Hour) Scan(value interface{}) error

func (Hour) Start

func (h Hour) Start() TimeExact

span.Time implementation

func (Hour) Value

func (h Hour) Value() (driver.Value, error)

type Incrementable

type Incrementable interface {
	Increment(dura.Time) TimeExact
	Decrement(dura.Time) TimeExact
}

type Micro

type Micro struct {
	time.Time
}

func MicroOf

func MicroOf(t time.Time) Micro

func NewMicro

func NewMicro(year int, month time.Month, day, hour, min, sec, micro int) Micro

func ThisMicro

func ThisMicro() Micro

func (Micro) AddDays

func (m Micro) AddDays(d int) Micro

func (Micro) AddHours

func (m Micro) AddHours(h int) Micro

func (Micro) AddMicro

func (m Micro) AddMicro(ms int) Micro

func (Micro) AddMillis

func (m Micro) AddMillis(ms int) Micro

func (Micro) AddMinutes

func (m Micro) AddMinutes(ms int) Micro

func (Micro) AddMonths

func (m Micro) AddMonths(ms int) Micro

func (Micro) AddN

func (m Micro) AddN(n int) Micro

func (Micro) AddNano

func (m Micro) AddNano(n int) TimeExact

func (Micro) AddSeconds

func (m Micro) AddSeconds(s int) Micro

func (Micro) AddYears

func (m Micro) AddYears(y int) Micro

func (Micro) After

func (m Micro) After(t Span) bool

func (Micro) AsDay

func (m Micro) AsDay() Day

func (Micro) AsHour

func (m Micro) AsHour() Hour

func (Micro) AsMicro

func (m Micro) AsMicro() Micro

func (Micro) AsMilli

func (m Micro) AsMilli() Milli

func (Micro) AsMinute

func (m Micro) AsMinute() Minute

func (Micro) AsMonth

func (m Micro) AsMonth() Month

func (Micro) AsSecond

func (m Micro) AsSecond() Second

func (Micro) AsTime

func (m Micro) AsTime() time.Time

func (Micro) AsTimeExact

func (m Micro) AsTimeExact() TimeExact

func (Micro) AsYear

func (m Micro) AsYear() Year

func (Micro) Before

func (m Micro) Before(t Span) bool

func (Micro) Contains

func (m Micro) Contains(t Span) bool

func (Micro) Decrement

func (m Micro) Decrement(l dura.Time) TimeExact

func (Micro) Duration

func (m Micro) Duration() dura.Time

func (Micro) End

func (m Micro) End() TimeExact

func (Micro) Increment

func (m Micro) Increment(l dura.Time) TimeExact

func (*Micro) Scan

func (m *Micro) Scan(value interface{}) error

func (Micro) Start

func (m Micro) Start() TimeExact

span.Time implementation

func (Micro) Value

func (m Micro) Value() (driver.Value, error)

type Milli

type Milli struct {
	time.Time
}

func MilliOf

func MilliOf(t time.Time) Milli

func NewMilli

func NewMilli(year int, month time.Month, day, hour, min, sec, milli int) Milli

func ThisMilli

func ThisMilli() Milli

func (Milli) AddDays

func (m Milli) AddDays(d int) Milli

func (Milli) AddHours

func (m Milli) AddHours(h int) Milli

func (Milli) AddMicro

func (m Milli) AddMicro(ms int) Micro

func (Milli) AddMillis

func (m Milli) AddMillis(ms int) Milli

func (Milli) AddMinutes

func (m Milli) AddMinutes(ms int) Milli

func (Milli) AddMonths

func (m Milli) AddMonths(ms int) Milli

func (Milli) AddN

func (m Milli) AddN(n int) Milli

func (Milli) AddNano

func (m Milli) AddNano(n int) TimeExact

func (Milli) AddSeconds

func (m Milli) AddSeconds(s int) Milli

func (Milli) AddYears

func (m Milli) AddYears(y int) Milli

func (Milli) After

func (m Milli) After(t Span) bool

func (Milli) AsDay

func (m Milli) AsDay() Day

func (Milli) AsHour

func (m Milli) AsHour() Hour

func (Milli) AsMicro

func (m Milli) AsMicro() Micro

func (Milli) AsMilli

func (m Milli) AsMilli() Milli

func (Milli) AsMinute

func (m Milli) AsMinute() Minute

func (Milli) AsMonth

func (m Milli) AsMonth() Month

func (Milli) AsSecond

func (m Milli) AsSecond() Second

func (Milli) AsTime

func (m Milli) AsTime() time.Time

func (Milli) AsTimeExact

func (m Milli) AsTimeExact() TimeExact

func (Milli) AsYear

func (m Milli) AsYear() Year

func (Milli) Before

func (m Milli) Before(t Span) bool

func (Milli) Contains

func (m Milli) Contains(t Span) bool

func (Milli) Decrement

func (m Milli) Decrement(l dura.Time) TimeExact

func (Milli) Duration

func (m Milli) Duration() dura.Time

func (Milli) End

func (m Milli) End() TimeExact

func (Milli) Increment

func (m Milli) Increment(l dura.Time) TimeExact

func (*Milli) Scan

func (m *Milli) Scan(value interface{}) error

func (Milli) Start

func (m Milli) Start() TimeExact

span.Time implementation

func (Milli) Value

func (m Milli) Value() (driver.Value, error)

type Minute

type Minute struct {
	time.Time
}

func MinuteOf

func MinuteOf(time time.Time) Minute

func NewMinute

func NewMinute(year int, month time.Month, day, hour, min int) Minute

func ThisMinute

func ThisMinute() Minute

func (Minute) AddDays

func (m Minute) AddDays(d int) Minute

func (Minute) AddHours

func (m Minute) AddHours(h int) Minute

func (Minute) AddMicro

func (m Minute) AddMicro(ms int) Micro

func (Minute) AddMillis

func (m Minute) AddMillis(ms int) Milli

func (Minute) AddMinutes

func (m Minute) AddMinutes(ms int) Minute

func (Minute) AddMonths

func (m Minute) AddMonths(ms int) Minute

func (Minute) AddN

func (m Minute) AddN(n int) Minute

func (Minute) AddNano

func (m Minute) AddNano(n int) TimeExact

func (Minute) AddSeconds

func (m Minute) AddSeconds(s int) Second

func (Minute) AddYears

func (m Minute) AddYears(y int) Minute

func (Minute) After

func (m Minute) After(t Span) bool

func (Minute) AsDay

func (m Minute) AsDay() Day

func (Minute) AsHour

func (m Minute) AsHour() Hour

func (Minute) AsMicro

func (m Minute) AsMicro() Micro

func (Minute) AsMilli

func (m Minute) AsMilli() Milli

func (Minute) AsMinute

func (m Minute) AsMinute() Minute

func (Minute) AsMonth

func (m Minute) AsMonth() Month

func (Minute) AsSecond

func (m Minute) AsSecond() Second

func (Minute) AsTime

func (m Minute) AsTime() time.Time

func (Minute) AsTimeExact

func (m Minute) AsTimeExact() TimeExact

func (Minute) AsYear

func (m Minute) AsYear() Year

func (Minute) Before

func (m Minute) Before(t Span) bool

func (Minute) Contains

func (m Minute) Contains(t Span) bool

func (Minute) Decrement

func (m Minute) Decrement(l dura.Time) TimeExact

func (Minute) Duration

func (m Minute) Duration() dura.Time

func (Minute) End

func (m Minute) End() TimeExact

func (Minute) Increment

func (m Minute) Increment(l dura.Time) TimeExact

func (*Minute) Scan

func (m *Minute) Scan(value interface{}) error

func (Minute) Start

func (m Minute) Start() TimeExact

span.Time implementation

func (Minute) Value

func (m Minute) Value() (driver.Value, error)

type Month

type Month struct {
	time.Time
}

func MonthOf

func MonthOf(time time.Time) Month

func NewMonth

func NewMonth(year int, month time.Month) Month

func ThisMonth

func ThisMonth() Month

func (Month) AddDays

func (m Month) AddDays(d int) Day

func (Month) AddHours

func (m Month) AddHours(h int) Hour

func (Month) AddMicro

func (m Month) AddMicro(mi int) Micro

func (Month) AddMillis

func (m Month) AddMillis(mi int) Milli

func (Month) AddMinutes

func (m Month) AddMinutes(mi int) Minute

func (Month) AddMonths

func (m Month) AddMonths(ms int) Month

func (Month) AddN

func (m Month) AddN(n int) Month

func (Month) AddNano

func (m Month) AddNano(n int) TimeExact

func (Month) AddSeconds

func (m Month) AddSeconds(s int) Second

func (Month) AddYears

func (m Month) AddYears(y int) Month

func (Month) After

func (m Month) After(t Span) bool

func (Month) AsDay

func (m Month) AsDay() Day

func (Month) AsHour

func (m Month) AsHour() Hour

func (Month) AsMicro

func (m Month) AsMicro() Micro

func (Month) AsMilli

func (m Month) AsMilli() Milli

func (Month) AsMinute

func (m Month) AsMinute() Minute

func (Month) AsMonth

func (m Month) AsMonth() Month

func (Month) AsSecond

func (m Month) AsSecond() Second

func (Month) AsTime

func (m Month) AsTime() time.Time

func (Month) AsTimeExact

func (m Month) AsTimeExact() TimeExact

func (Month) AsYear

func (m Month) AsYear() Year

func (Month) Before

func (m Month) Before(t Span) bool

func (Month) Contains

func (m Month) Contains(t Span) bool

func (Month) Decrement

func (m Month) Decrement(l dura.Time) TimeExact

func (Month) Duration

func (m Month) Duration() dura.Time

func (Month) End

func (m Month) End() TimeExact

func (Month) Increment

func (m Month) Increment(l dura.Time) TimeExact

func (*Month) Scan

func (m *Month) Scan(value interface{}) error

func (Month) Start

func (m Month) Start() TimeExact

span.Time implementation

func (Month) Value

func (m Month) Value() (driver.Value, error)

type Schedule

type Schedule struct {
	// contains filtered or unexported fields
}

type Second

type Second struct {
	time.Time
}

func NewSecond

func NewSecond(year int, month time.Month, day, hour, min, sec int) Second

func SecondOf

func SecondOf(t time.Time) Second

func ThisSecond

func ThisSecond() Second

func (Second) AddDays

func (s Second) AddDays(d int) Second

func (Second) AddHours

func (s Second) AddHours(h int) Second

func (Second) AddMicro

func (s Second) AddMicro(m int) Micro

func (Second) AddMillis

func (s Second) AddMillis(m int) Milli

func (Second) AddMinutes

func (s Second) AddMinutes(m int) Second

func (Second) AddMonths

func (s Second) AddMonths(m int) Second

func (Second) AddN

func (s Second) AddN(n int) Second

func (Second) AddNano

func (s Second) AddNano(n int) TimeExact

func (Second) AddSeconds

func (s Second) AddSeconds(secs int) Second

func (Second) AddYears

func (s Second) AddYears(y int) Second

func (Second) After

func (s Second) After(t Span) bool

func (Second) AsDay

func (s Second) AsDay() Day

func (Second) AsHour

func (s Second) AsHour() Hour

func (Second) AsMicro

func (s Second) AsMicro() Micro

func (Second) AsMilli

func (s Second) AsMilli() Milli

func (Second) AsMinute

func (s Second) AsMinute() Minute

func (Second) AsMonth

func (s Second) AsMonth() Month

func (Second) AsSecond

func (s Second) AsSecond() Second

func (Second) AsTime

func (s Second) AsTime() time.Time

func (Second) AsTimeExact

func (s Second) AsTimeExact() TimeExact

func (Second) AsYear

func (s Second) AsYear() Year

func (Second) Before

func (s Second) Before(t Span) bool

func (Second) Contains

func (s Second) Contains(t Span) bool

func (Second) Decrement

func (s Second) Decrement(l dura.Time) TimeExact

func (Second) Duration

func (s Second) Duration() dura.Time

func (Second) End

func (s Second) End() TimeExact

func (Second) Increment

func (s Second) Increment(l dura.Time) TimeExact

func (*Second) Scan

func (s *Second) Scan(value interface{}) error

func (Second) Start

func (s Second) Start() TimeExact

/ span.Time implementation

func (Second) Value

func (s Second) Value() (driver.Value, error)

type SeqOption

type SeqOption func(*Sequence) error

type Sequence

type Sequence struct {
	// contains filtered or unexported fields
}

func NewSequence

func NewSequence(begin Time, opts ...SeqOption) *Sequence

type Span

type Span interface {
	Start() TimeExact
	End() TimeExact
	Duration() dura.Time
	Comparable
}

type Time

type Time interface {

	// Implementations of Time have methods that transfer the data to
	// structs with different precision. For example: 2017-01-05 12:45:06
	// is a has second precision, if this data were represented as a chron.Second
	// sec.AsDay() would truncate the time to 2017-01-05 00:00:00.
	AsYear() Year
	AsMonth() Month
	AsDay() Day
	AsHour() Hour
	AsMinute() Minute
	AsSecond() Second
	AsMilli() Milli
	AsMicro() Micro
	AsTimeExact() TimeExact
	AsTime() time.Time
	Incrementable
}

Time implementations are instants in time that are transferable to other instants with a different precision--year, month, day, hour, minute, second, milli, micro, nano (which is called TimeExact). Implementations are also transferable to an underlying time.Time via AsTime().

type TimeExact

type TimeExact struct {
	time.Time
}

func MaxValue

func MaxValue() TimeExact

func MinValue

func MinValue() TimeExact

func NewTime

func NewTime(year int, month time.Month, day, hour, min, sec, nano int) TimeExact

func Now

func Now() TimeExact

func TimeOf

func TimeOf(t time.Time) TimeExact

func ZeroUnix

func ZeroUnix() TimeExact

func ZeroValue

func ZeroValue() TimeExact

func ZeroYear

func ZeroYear() TimeExact

func (TimeExact) AddDays

func (t TimeExact) AddDays(d int) TimeExact

func (TimeExact) AddHours

func (t TimeExact) AddHours(h int) TimeExact

func (TimeExact) AddMicro

func (t TimeExact) AddMicro(m int) TimeExact

func (TimeExact) AddMillis

func (t TimeExact) AddMillis(m int) TimeExact

func (TimeExact) AddMinutes

func (t TimeExact) AddMinutes(m int) TimeExact

func (TimeExact) AddMonths

func (t TimeExact) AddMonths(m int) TimeExact

func (TimeExact) AddN

func (t TimeExact) AddN(n int) TimeExact

AddN adds n Nanoseconds to the TimeExact

func (TimeExact) AddNano

func (t TimeExact) AddNano(n int) TimeExact

func (TimeExact) AddSeconds

func (t TimeExact) AddSeconds(s int) TimeExact

func (TimeExact) AddYears

func (t TimeExact) AddYears(y int) TimeExact

func (TimeExact) After

func (t TimeExact) After(s Span) bool

func (TimeExact) AsDay

func (t TimeExact) AsDay() Day

func (TimeExact) AsHour

func (t TimeExact) AsHour() Hour

func (TimeExact) AsMicro

func (t TimeExact) AsMicro() Micro

func (TimeExact) AsMilli

func (t TimeExact) AsMilli() Milli

func (TimeExact) AsMinute

func (t TimeExact) AsMinute() Minute

func (TimeExact) AsMonth

func (t TimeExact) AsMonth() Month

func (TimeExact) AsSecond

func (t TimeExact) AsSecond() Second

func (TimeExact) AsTime

func (t TimeExact) AsTime() time.Time

func (TimeExact) AsTimeExact

func (t TimeExact) AsTimeExact() TimeExact

func (TimeExact) AsYear

func (t TimeExact) AsYear() Year

func (TimeExact) Before

func (t TimeExact) Before(s Span) bool

func (TimeExact) Contains

func (t TimeExact) Contains(s Span) bool

func (TimeExact) Decrement

func (t TimeExact) Decrement(d dura.Time) TimeExact

func (TimeExact) Duration

func (t TimeExact) Duration() dura.Time

func (TimeExact) End

func (t TimeExact) End() TimeExact

func (TimeExact) Increment

func (t TimeExact) Increment(d dura.Time) TimeExact

func (*TimeExact) Scan

func (t *TimeExact) Scan(value interface{}) error

func (TimeExact) Start

func (t TimeExact) Start() TimeExact

span.Time implementation

func (TimeExact) Value

func (t TimeExact) Value() (driver.Value, error)

type TimeSpan

type TimeSpan struct {
	// contains filtered or unexported fields
}

func NewTimeSpan

func NewTimeSpan(start TimeExact, d dura.Time) *TimeSpan

func (TimeSpan) After

func (s TimeSpan) After(t Span) bool

func (TimeSpan) Before

func (s TimeSpan) Before(t Span) bool

func (TimeSpan) Contains

func (s TimeSpan) Contains(t Span) bool

func (TimeSpan) Duration

func (s TimeSpan) Duration() dura.Time

func (TimeSpan) End

func (s TimeSpan) End() TimeExact

func (TimeSpan) Start

func (s TimeSpan) Start() TimeExact

func (TimeSpan) String

func (s TimeSpan) String() string

type Year

type Year struct {
	time.Time
}

func NewYear

func NewYear(year int) Year

func ThisYear

func ThisYear() Year

func YearOf

func YearOf(time time.Time) Year

func (Year) AddDays

func (y Year) AddDays(d int) Day

func (Year) AddHours

func (y Year) AddHours(h int) Hour

func (Year) AddMicro

func (y Year) AddMicro(m int) Micro

func (Year) AddMillis

func (y Year) AddMillis(m int) Milli

func (Year) AddMinutes

func (y Year) AddMinutes(m int) Minute

func (Year) AddMonths

func (y Year) AddMonths(m int) Month

func (Year) AddN

func (y Year) AddN(n int) Year

func (Year) AddNano

func (y Year) AddNano(n int) TimeExact

func (Year) AddSeconds

func (y Year) AddSeconds(s int) Second

func (Year) AddYears

func (y Year) AddYears(ys int) Year

func (Year) After

func (y Year) After(t Span) bool

func (Year) AsDay

func (y Year) AsDay() Day

func (Year) AsHour

func (y Year) AsHour() Hour

func (Year) AsMicro

func (y Year) AsMicro() Micro

func (Year) AsMilli

func (y Year) AsMilli() Milli

func (Year) AsMinute

func (y Year) AsMinute() Minute

func (Year) AsMonth

func (y Year) AsMonth() Month

func (Year) AsSecond

func (y Year) AsSecond() Second

func (Year) AsTime

func (y Year) AsTime() time.Time

func (Year) AsTimeExact

func (y Year) AsTimeExact() TimeExact

func (Year) AsYear

func (y Year) AsYear() Year

func (Year) Before

func (y Year) Before(t Span) bool

func (Year) Contains

func (y Year) Contains(t Span) bool

func (Year) Decrement

func (y Year) Decrement(i dura.Time) TimeExact

func (Year) Duration

func (y Year) Duration() dura.Time

func (Year) End

func (y Year) End() TimeExact

func (Year) Increment

func (y Year) Increment(i dura.Time) TimeExact

func (*Year) Scan

func (y *Year) Scan(value interface{}) error

func (Year) Start

func (y Year) Start() TimeExact

span.Time implementation

func (Year) Value

func (y Year) Value() (driver.Value, error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL