Prev implements the Datum interface.
(_ *EvalContext)
| 1833 | |
| 1834 | // Prev implements the Datum interface. |
| 1835 | func (d *DDate) Prev(_ *EvalContext) (Datum, bool) { |
| 1836 | switch d.Date { |
| 1837 | case pgdate.PosInfDate: |
| 1838 | return dHighDate, true |
| 1839 | case pgdate.LowDate: |
| 1840 | return dMinDate, true |
| 1841 | case pgdate.NegInfDate: |
| 1842 | return nil, false |
| 1843 | } |
| 1844 | n, err := d.AddDays(-1) |
| 1845 | if err != nil { |
| 1846 | return nil, false |
| 1847 | } |
| 1848 | return NewDDate(n), true |
| 1849 | } |
| 1850 | |
| 1851 | // Next implements the Datum interface. |
| 1852 | func (d *DDate) Next(_ *EvalContext) (Datum, bool) { |