baml.time.Disambiguation

How to resolve a wall-clock reading that a timezone maps to no instant or to two. Mirrors TC39 Temporal's `disambiguation` option, value for value.

Reference version

Signature

type baml.time.Disambiguation = "compatible" | "earlier" | "later" | "reject"

How to resolve a wall-clock reading that a timezone maps to no instant or to two. Mirrors TC39 Temporal's disambiguation option, value for value.

A daylight-saving transition leaves either a gap (spring forward: a range of readings that never occurred) or an overlap (fall back: a range that occurred twice). Every other reading maps to exactly one instant and is unaffected by this setting.

  • "compatible" (the default everywhere it appears): the later instant for a gap, the earlier one for an overlap.
  • "earlier" / "later": always take that side of the transition.
  • "reject": refuse to guess, and throw baml.time.AmbiguousTimeError.

Used by baml.time.PlainDateTime.to_zoned and baml.time.ZonedDateTime.from_components.

Source:<builtin>/baml/ns_time/timezone.bamlbytes 806874