This module defines the Modifier type and its sub-types, representing format pattern letters.
Equations
- Std.Time.instReprText = { reprPrec := Std.Time.instReprText.repr }
Equations
- Std.Time.instReprText.repr Std.Time.Text.short prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.Text.short")).group prec✝
- Std.Time.instReprText.repr Std.Time.Text.full prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.Text.full")).group prec✝
- Std.Time.instReprText.repr Std.Time.Text.narrow prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.Text.narrow")).group prec✝
- Std.Time.instReprText.repr Std.Time.Text.twoLetterShort prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.Text.twoLetterShort")).group prec✝
Instances For
Equations
Equations
- Std.Time.instReprNumber = { reprPrec := Std.Time.instReprNumber.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
classifyNumberText classifies the number of pattern letters into either a Number or Text.
Equations
Instances For
Equations
- Std.Time.instReprFraction = { reprPrec := Std.Time.instReprFraction.repr }
Equations
- One or more equations did not get rendered due to their size.
- Std.Time.instReprFraction.repr Std.Time.Fraction.nano prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.Fraction.nano")).group prec✝
Instances For
Equations
Year represents different year formatting styles based on the number of pattern letters.
- any : Year
Any size (e.g., "19000000000000")
- twoDigit : Year
Two-digit year format (e.g., "23" for 2023)
- fourDigit : Year
Four-digit year format (e.g., "2023")
- extended
(num : Nat)
: Year
Extended year format for more than 4 digits (e.g., "002023")
Instances For
Equations
- Std.Time.instReprYear = { reprPrec := Std.Time.instReprYear.repr }
Equations
- One or more equations did not get rendered due to their size.
- Std.Time.instReprYear.repr Std.Time.Year.any prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.Year.any")).group prec✝
- Std.Time.instReprYear.repr Std.Time.Year.twoDigit prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.Year.twoDigit")).group prec✝
- Std.Time.instReprYear.repr Std.Time.Year.fourDigit prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.Year.fourDigit")).group prec✝
Instances For
Equations
ZoneId represents different time zone ID formats based on the number of pattern letters.
- unknown : ZoneId
Unknown zone placeholder (1 letter,
V): always formats as "unk". - short : ZoneId
IANA time zone ID (2 letters,
VV, e.g., "America/Los_Angeles"). - full : ZoneId
Reserved for a future generic location format (
VVVV). Currently formatted identically toshort.
Instances For
Equations
- Std.Time.instReprZoneId.repr Std.Time.ZoneId.unknown prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.ZoneId.unknown")).group prec✝
- Std.Time.instReprZoneId.repr Std.Time.ZoneId.short prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.ZoneId.short")).group prec✝
- Std.Time.instReprZoneId.repr Std.Time.ZoneId.full prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.ZoneId.full")).group prec✝
Instances For
Equations
- Std.Time.instReprZoneId = { reprPrec := Std.Time.instReprZoneId.repr }
Equations
Equations
- Std.Time.instReprZoneName.repr Std.Time.ZoneName.short prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.ZoneName.short")).group prec✝
- Std.Time.instReprZoneName.repr Std.Time.ZoneName.full prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.ZoneName.full")).group prec✝
Instances For
Equations
- Std.Time.instReprZoneName = { reprPrec := Std.Time.instReprZoneName.repr }
Equations
classify classifies the number of pattern letters and the letter type ('z' or 'v')
into a ZoneName format.
- For 'z', if less than 4 letters, it returns the short form; if 4 letters, it returns the full form.
- For 'v', if 1 letter, it returns the short form; if 4 letters, it returns the full form.
- Otherwise, it returns none.
Equations
- One or more equations did not get rendered due to their size.
Instances For
OffsetX represents different offset formats based on the number of pattern letters.
The output will vary between the number of pattern letters, whether it's the hour, minute, second,
and whether colons are used.
- hour : OffsetX
Only the hour is output (e.g., "+01")
- hourMinute : OffsetX
Hour and minute without colon (e.g., "+0130")
- hourMinuteColon : OffsetX
Hour and minute with colon (e.g., "+01:30")
- hourMinuteSecond : OffsetX
Hour, minute, and second without colon (e.g., "+013015")
- hourMinuteSecondColon : OffsetX
Hour, minute, and second with colon (e.g., "+01:30:15")
Instances For
Equations
- Std.Time.instReprOffsetX = { reprPrec := Std.Time.instReprOffsetX.repr }
Equations
- One or more equations did not get rendered due to their size.
- Std.Time.instReprOffsetX.repr Std.Time.OffsetX.hour prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.OffsetX.hour")).group prec✝
- Std.Time.instReprOffsetX.repr Std.Time.OffsetX.hourMinute prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.OffsetX.hourMinute")).group prec✝
Instances For
Equations
Equations
- Std.Time.instReprOffsetO.repr Std.Time.OffsetO.short prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.OffsetO.short")).group prec✝
- Std.Time.instReprOffsetO.repr Std.Time.OffsetO.full prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.OffsetO.full")).group prec✝
Instances For
Equations
- Std.Time.instReprOffsetO = { reprPrec := Std.Time.instReprOffsetO.repr }
Equations
OffsetZ represents different offset formats based on the number of pattern letters (capital 'Z').
- hourMinute : OffsetZ
Hour and minute without colon, with optional seconds (e.g., "+0130", "+013015")
- full : OffsetZ
Localized offset text in full form (e.g., "GMT+08:00")
- hourMinuteSecondColon : OffsetZ
Hour and minute with colon, with optional seconds, and "Z" for zero offset (e.g., "+01:30", "+01:30:15", "Z")
Instances For
Equations
- One or more equations did not get rendered due to their size.
- Std.Time.instReprOffsetZ.repr Std.Time.OffsetZ.hourMinute prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.OffsetZ.hourMinute")).group prec✝
- Std.Time.instReprOffsetZ.repr Std.Time.OffsetZ.full prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.OffsetZ.full")).group prec✝
Instances For
Equations
- Std.Time.instReprOffsetZ = { reprPrec := Std.Time.instReprOffsetZ.repr }
Equations
classify classifies the number of pattern letters into an OffsetZ format.
Equations
- Std.Time.OffsetZ.classify 1 = some Std.Time.OffsetZ.hourMinute
- Std.Time.OffsetZ.classify 2 = some Std.Time.OffsetZ.hourMinute
- Std.Time.OffsetZ.classify 3 = some Std.Time.OffsetZ.hourMinute
- Std.Time.OffsetZ.classify 4 = some Std.Time.OffsetZ.full
- Std.Time.OffsetZ.classify 5 = some Std.Time.OffsetZ.hourMinuteSecondColon
- Std.Time.OffsetZ.classify num = none
Instances For
Equations
- One or more equations did not get rendered due to their size.
- Std.Time.instReprDayPeriod.repr Std.Time.DayPeriod.am prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.DayPeriod.am")).group prec✝
- Std.Time.instReprDayPeriod.repr Std.Time.DayPeriod.pm prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.DayPeriod.pm")).group prec✝
- Std.Time.instReprDayPeriod.repr Std.Time.DayPeriod.noon prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Std.Time.DayPeriod.noon")).group prec✝
Instances For
Equations
- Std.Time.instReprDayPeriod = { reprPrec := Std.Time.instReprDayPeriod.repr }
Equations
ExtendedDayPeriod is a more granular day-period classification used by the B pattern,
subdividing the day into named English CLDR segments.
- midnight : ExtendedDayPeriod
Exactly 00:00:00
- night : ExtendedDayPeriod
21:00–06:00 (exclusive of midnight)
- morning : ExtendedDayPeriod
06:00–12:00
- noon : ExtendedDayPeriod
Exactly 12:00:00
- afternoon : ExtendedDayPeriod
12:00–18:00
- evening : ExtendedDayPeriod
18:00–21:00
Instances For
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Modifier represents a single format pattern letter with its presentation style.
The table below lists every symbol, its presentation type, the TypeFormat value type produced
when parsing or consumed when formatting, and representative output examples.
Symbol Meaning Presentation TypeFormat Examples
──────────────────────────────────────────────────────────────────────────────────────────────────
G era Text Year.Era AD; Anno Domini; A
u year (proleptic/astronomical) Year Year.Offset 2004; 04; -0001; -1
y year-of-era Year Year.Offset 2004; 04; 0002; 2
D day-of-year Number Σ Day.Ordinal.OfYear 189
M/L month-of-year Number ⊕ Text Month.Ordinal 7; 07; Jul; July; J
d day-of-month Number Day.Ordinal 10
──────────────────────────────────────────────────────────────────────────────────────────────────
Q/q quarter-of-year Number ⊕ Text Month.Quarter 3; 03; Q3; 3rd quarter
Y week-based-year Year Year.Offset 1996; 96
w week-of-week-based-year Number Week.Ordinal 27
W week-of-month Number Week.Ordinal.OfMonth 4
E day-of-week (text only) Text Weekday Tue; Tuesday; T
e/c localized day-of-week Number ⊕ Text Weekday 2; 02; Tue; Tuesday; T
F day-of-week-in-month Number Bounded.LE 1 5 3
──────────────────────────────────────────────────────────────────────────────────────────────────
a am-pm-of-day Text HourMarker AM; PM
b day-period (noon/midnight) Text DayPeriod AM; noon; midnight
B extended day period Text ExtendedDayPeriod in the morning; at night
h clock-hour-of-am-pm (1-12) Number Bounded.LE 1 12 12
K hour-of-am-pm (0-11) Number Bounded.LE 0 11 0
k clock-hour-of-day (1-24) Number Bounded.LE 1 24 24
──────────────────────────────────────────────────────────────────────────────────────────────────
H hour-of-day (0-23) Number Hour.Ordinal 0
m minute-of-hour Number Minute.Ordinal 30
s second-of-minute Number Second.Ordinal true 55
S fraction-of-second Fraction Nanosecond.Ordinal 978
A milli-of-day Number Millisecond.Offset 1234
n nano-of-second Number Nanosecond.Ordinal 987654321
N nano-of-day Number Nanosecond.Offset 1234000000
──────────────────────────────────────────────────────────────────────────────────────────────────
V time-zone ID ZoneId String America/Los_Angeles; Z
z time-zone name ZoneName String Pacific Standard Time; PST
v generic zone name ZoneName String Pacific Time; PT
O localized zone-offset OffsetO Offset GMT+8; GMT+08:00
X zone-offset ('Z' for zero) OffsetX Offset Z; -08; -0830; -08:30
x zone-offset OffsetX Offset +0000; -08; -0830; -08:30
Z zone-offset OffsetZ Offset +0000; -0800; -08:00
- G
(presentation : Text)
: Modifier
G: Era (e.g., AD, Anno Domini, A). - u (presentation : Year) : Modifier
- y (presentation : Year) : Modifier
- D
(presentation : Number)
: Modifier
D: Day of year (e.g., 189). - M
(presentation : Number ⊕ Text)
: Modifier
M: Month of year as number or text (e.g., 7, 07, Jul, July, J). - L (presentation : Number ⊕ Text) : Modifier
- d
(presentation : Number)
: Modifier
d: Day of month (e.g., 10). - Q
(presentation : Number ⊕ Text)
: Modifier
Q: Quarter of year as number or text (e.g., 3, 03, Q3, 3rd quarter). - q
(presentation : Number ⊕ Text)
: Modifier
q: Stand-alone quarter of year as number or text (e.g., 3, 03, Q3, 3rd quarter). Stand-alone means the value is used independently (e.g., a calendar header) rather than as part of a full date phrase. In practice the output is the same asQ; the distinction is meaningful only in locale-aware contexts. - Y (presentation : Year) : Modifier
- w
(presentation : Number)
: Modifier
w: Week of week-based year (e.g., 27). - W
(presentation : Number)
: Modifier
W: Week of month (e.g., 4). - E
(presentation : Text)
: Modifier
E: Day of week as text (e.g., Tue, Tuesday, T). - e (presentation : Number ⊕ Text) : Modifier
- c (presentation : Number ⊕ Text) : Modifier
- F
(presentation : Number)
: Modifier
F: Day-of-week-in-month / occurrence of the weekday within the month (e.g., 2nd Sunday -> 2). - a
(presentation : Text)
: Modifier
a: AM/PM of day (e.g., PM). - b
(presentation : Text)
: Modifier
b: Day period with noon/midnight distinction (e.g., AM, noon, midnight). - B
(presentation : Text)
: Modifier
B: Extended day period with named segments (e.g., "in the morning", "at night"). - h
(presentation : Number)
: Modifier
h: Clock hour of AM/PM (1-12) (e.g., 12). - K
(presentation : Number)
: Modifier
K: Hour of AM/PM (0-11) (e.g., 0). - k
(presentation : Number)
: Modifier
k: Clock hour of day (1-24) (e.g., 24). - H
(presentation : Number)
: Modifier
H: Hour of day (0-23) (e.g., 0). - m
(presentation : Number)
: Modifier
m: Minute of hour (e.g., 30). - s
(presentation : Number)
: Modifier
s: Second of minute (e.g., 55). - S
(presentation : Fraction)
: Modifier
S: Fraction of second (e.g., 978). - A
(presentation : Number)
: Modifier
A: Millisecond of day (e.g., 1234). - n
(presentation : Number)
: Modifier
n: Nanosecond of second (e.g., 987654321). - N
(presentation : Number)
: Modifier
N: Nanosecond of day (e.g., 1234000000). - V (presentation : ZoneId) : Modifier
- z
(presentation : ZoneName)
: Modifier
z: Time zone name (e.g., Pacific Standard Time, PST). - v
(presentation : ZoneName)
: Modifier
v: Generic time zone name, without DST distinction (e.g., Pacific Time, PT). - O
(presentation : OffsetO)
: Modifier
O: Localized zone offset using theGMTprefix (e.g.,GMT+8,GMT+08:00). - X
(presentation : OffsetX)
: Modifier
X: Zone offset with 'Z' for zero (e.g., Z, -08, -0830, -08:30). - x
(presentation : OffsetX)
: Modifier
x: Zone offset without 'Z' (e.g., +0000, -08, -0830, -08:30). - Z (presentation : OffsetZ) : Modifier
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Std.Time.instReprModifier = { reprPrec := Std.Time.instReprModifier.repr }
Equations
Parses a single format Modifier from the input string.
Equations
- One or more equations did not get rendered due to their size.