pagination

package module
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 10, 2026 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AnyToString

func AnyToString(v any) string

AnyToString 将任意值转换为 *string(nil 安全)

func AnyToStructValue

func AnyToStructValue(v any) *structpb.Value

AnyToStructValue 将任意值转换为 structpb.Value(nil 安全)

func ClearFilterExprByFieldNames

func ClearFilterExprByFieldNames(expr *paginationV1.FilterExpr, fieldName string)

ClearFilterExprByFieldNames 从 FilterExpr 中移除指定字段名的所有条件(就地修改)

func FilterFields

func FilterFields(filterExpr *paginationV1.FilterExpr, excludeFields []string) []*paginationV1.FilterCondition

FilterFields 过滤掉不需要的字段条件

func RemoveExcludedConditions

func RemoveExcludedConditions(filterExpr *paginationV1.FilterExpr, excludeFields []string) []*paginationV1.FilterCondition

RemoveExcludedConditions 从 filterExpr 中移除指定的字段条件(就地修改), 并返回被移除的条件列表。

func StructValueToString

func StructValueToString(sv *structpb.Value) string

StructValueToString 将 structpb.Value 转换为字符串表现形式

Types

type PaginateMode

type PaginateMode int

PaginateMode 表示分页方式

const (
	ModePage PaginateMode = iota
	ModeOffset
	ModeToken
)

type Paginator

type Paginator interface {
	Mode() PaginateMode

	Page() int
	Size() int

	Offset() int
	Limit() int

	Token() string
	NextToken() string
	PrevToken() string
	SetToken(token string)
	SetNextToken(token string)
	SetPrevToken(token string)

	Total() int64
	SetTotal(total int64)
	TotalPages() int

	HasNext() bool
	HasPrev() bool

	WithPage(page int) Paginator
	WithSize(size int) Paginator
	WithOffset(offset int) Paginator
	WithLimit(limit int) Paginator
	WithToken(token string) Paginator
}

Paginator 分页器接口

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL