Parse natural-language time expressions into concrete date ranges via the LLM endpoint.
Summary
Functions
Build a parser.
Return {start_date, end_date} for the range described by query, extended
by buffer_days on each side and clamped to today..today+1yr.
Like parse/3, but returns {start_date, end_date} or raises Guava.Error.
Types
@type t() :: %Guava.DateRangeParser{client: Guava.Client.t()}
Functions
@spec new(Guava.Client.t()) :: t()
Build a parser.
@spec parse(t(), String.t(), non_neg_integer()) :: {:ok, {Date.t(), Date.t()}} | {:error, Guava.Error.t()}
Return {start_date, end_date} for the range described by query, extended
by buffer_days on each side and clamped to today..today+1yr.
@spec parse!(t(), String.t(), non_neg_integer()) :: {Date.t(), Date.t()}
Like parse/3, but returns {start_date, end_date} or raises Guava.Error.