Browsable Rascal Date/Time Grammar

CC-BY

Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: api/rascal/datetime/extracted
Source used for this grammar: Jurgen J. Vinju, Mark Hills, DateTime, 2009–2013 [Explore]

Summary

Syntax

datetime ::=
	[now]::ε
datetime ::=
	[createDate]::(⟨year⟩:integer ⟨month⟩:integer ⟨day⟩:integer)
datetime ::=
	[createTime]::(⟨hour⟩:integer ⟨minute⟩:integer ⟨second⟩:integer ⟨millisecond⟩:integer)
datetime ::=
	[createTime]::(⟨hour⟩:integer ⟨minute⟩:integer ⟨second⟩:integer ⟨millisecond⟩:integer ⟨timezoneHourOffset⟩:integer ⟨timezoneMinuteOffset⟩:integer)
datetime ::=
	[createDateTime]::(⟨year⟩:integer ⟨month⟩:integer ⟨day⟩:integer ⟨hour⟩:integer ⟨minute⟩:integer ⟨second⟩:integer ⟨millisecond⟩:integer)
datetime ::=
	[createDateTime]::(⟨year⟩:integer ⟨month⟩:integer ⟨day⟩:integer ⟨hour⟩:integer ⟨minute⟩:integer ⟨second⟩:integer ⟨millisecond⟩:integer ⟨timezoneHourOffset⟩:integer ⟨timezoneMinuteOffset⟩:integer)
datetime ::=
	[joinDateAndTime]::(⟨date⟩:string ⟨time⟩:string)
tuple[datetime date, datetime time] ::=
	[splitDateTime]::⟨dt⟩:string
datetime ::=
	[incrementYears]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[incrementYears]::⟨dt⟩:string
datetime ::=
	[incrementMonths]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[incrementMonths]::⟨dt⟩:string
datetime ::=
	[incrementDays]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[incrementDays]::⟨dt⟩:string
datetime ::=
	[incrementHours]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[incrementHours]::⟨dt⟩:string
datetime ::=
	[incrementMinutes]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[incrementMinutes]::⟨dt⟩:string
datetime ::=
	[incrementSeconds]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[incrementSeconds]::⟨dt⟩:string
datetime ::=
	[incrementMilliseconds]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[incrementMilliseconds]::⟨dt⟩:string
datetime ::=
	[decrementYears]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[decrementYears]::⟨dt⟩:string
datetime ::=
	[decrementMonths]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[decrementMonths]::⟨dt⟩:string
datetime ::=
	[decrementDays]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[decrementDays]::⟨dt⟩:string
datetime ::=
	[decrementHours]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[decrementHours]::⟨dt⟩:string
datetime ::=
	[decrementMinutes]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[decrementMinutes]::⟨dt⟩:string
datetime ::=
	[decrementSeconds]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[decrementSeconds]::⟨dt⟩:string
datetime ::=
	[decrementMilliseconds]::(⟨dt⟩:string ⟨n⟩:integer)
datetime ::=
	[decrementMilliseconds]::⟨dt⟩:string
interval ::=
	[createInterval]::(⟨begin⟩:string ⟨end⟩:string)
tuple[int,int,int,int,int,int,int] ::=
	[createDurationInternal]::(⟨begin⟩:string ⟨end⟩:string)
Duration ::=
	[createDuration]::(⟨begin⟩:string ⟨end⟩:string)
Duration ::=
	[createDuration]::⟨i⟩:interval
int ::=
	[daysInInterval]::⟨i⟩:interval
int ::=
	[daysDiff]::(⟨begin⟩:string ⟨end⟩:string)
list[datetime] ::=
	[dateRangeByDay]::⟨i⟩:interval
datetime ::=
	[parseDate]::(⟨inputDate⟩:string ⟨formatString⟩:string)
datetime ::=
	[parseDateInLocale]::(⟨inputDate⟩:string ⟨formatString⟩:string ⟨locale⟩:string)
datetime ::=
	[parseTime]::(⟨inputTime⟩:string ⟨formatString⟩:string)
datetime ::=
	[parseTimeInLocale]::(⟨inputTime⟩:string ⟨formatString⟩:string ⟨locale⟩:string)
datetime ::=
	[parseDateTime]::(⟨inputDateTime⟩:string ⟨formatString⟩:string)
datetime ::=
	[parseDateTimeInLocale]::(⟨inputDateTime⟩:string ⟨formatString⟩:string ⟨locale⟩:string)
str ::=
	[printDate]::(⟨inputDate⟩:string ⟨formatString⟩:string)
str ::=
	[printDate]::⟨inputDate⟩:string
str ::=
	[printDateInLocale]::(⟨inputDate⟩:string ⟨formatString⟩:string ⟨locale⟩:string)
str ::=
	[printDateInLocale]::(⟨inputDate⟩:string ⟨locale⟩:string)
str ::=
	[printTime]::(⟨inputTime⟩:string ⟨formatString⟩:string)
str ::=
	[printTime]::⟨inputTime⟩:string
str ::=
	[printTimeInLocale]::(⟨inputTime⟩:string ⟨formatString⟩:string ⟨locale⟩:string)
str ::=
	[printTimeInLocale]::(⟨inputTime⟩:string ⟨locale⟩:string)
str ::=
	[printDateTime]::(⟨inputDateTime⟩:string ⟨formatString⟩:string)
str ::=
	[printDateTime]::⟨inputDateTime⟩:string
str ::=
	[printDateTimeInLocale]::(⟨inputDateTime⟩:string ⟨formatString⟩:string ⟨locale⟩:string)
str ::=
	[printDateTimeInLocale]::(⟨inputDateTime⟩:string ⟨locale⟩:string)

GrammarLabMaintained by Dr. Vadim Zaytsev a.k.a. @grammarware. Last updated in September 2015. [↑]