Next implements the Datum interface.
(ctx context.Context, cmpCtx CompareContext)
| 2214 | |
| 2215 | // Next implements the Datum interface. |
| 2216 | func (d *DDate) Next(ctx context.Context, cmpCtx CompareContext) (Datum, bool) { |
| 2217 | switch d.Date { |
| 2218 | case pgdate.NegInfDate: |
| 2219 | return dLowDate, true |
| 2220 | case pgdate.HighDate: |
| 2221 | return dMaxDate, true |
| 2222 | case pgdate.PosInfDate: |
| 2223 | return nil, false |
| 2224 | } |
| 2225 | n, err := d.AddDays(1) |
| 2226 | if err != nil { |
| 2227 | return nil, false |
| 2228 | } |
| 2229 | return NewDDate(n), true |
| 2230 | } |
| 2231 | |
| 2232 | // IsMax implements the Datum interface. |
| 2233 | func (d *DDate) IsMax(ctx context.Context, cmpCtx CompareContext) bool { |