goext/cursortoken/tokenPaginate.go
Mike Schwörer e154137105
All checks were successful
Build Docker and Deploy / Run goext test-suite (push) Successful in 2m11s
Trying out paginated cursortoken variant [UNTESTED]
2024-10-25 09:45:42 +02:00

34 lines
420 B
Go

package cursortoken
import "strconv"
type CTPaginated struct {
Mode Mode
Page int
}
func Page(p int) CursorToken {
return CTPaginated{
Mode: CTMNormal,
Page: p,
}
}
func PageEnd() CursorToken {
return CTPaginated{
Mode: CTMEnd,
Page: 0,
}
}
func (c CTPaginated) Token() string {
if c.Mode == CTMStart {
return "$1"
}
if c.Mode == CTMEnd {
return "$end"
}
return "$" + strconv.Itoa(c.Page)
}