Documentation
¶
Index ¶
- func GetFieldIndices(dest interface{}) ([]interface{}, error)
- type BoolField
- func (f BoolField) ColumnName() string
- func (f BoolField) Eq(value bool) Condition
- func (f BoolField) In(values ...bool) Condition
- func (f BoolField) IsNotNull() Condition
- func (f BoolField) IsNull() Condition
- func (f BoolField) Ne(value bool) Condition
- func (f BoolField) NotIn(values ...bool) Condition
- type Builder
- func (b *Builder[T]) Count(ctx context.Context) (int64, error)
- func (b *Builder[T]) Find(ctx context.Context) ([]T, error)
- func (b *Builder[T]) First(ctx context.Context) (T, error)
- func (b *Builder[T]) Limit(limit int) *Builder[T]
- func (b *Builder[T]) Offset(offset int) *Builder[T]
- func (b *Builder[T]) OrderByAsc(column string) *Builder[T]
- func (b *Builder[T]) OrderByDesc(column string) *Builder[T]
- func (b *Builder[T]) Select(columns ...string) *Builder[T]
- func (b *Builder[T]) Where(condition interface{}) *Builder[T]
- type Comparador
- type ComparadorOrdenavel
- type Condition
- type ConditionGroup
- type Field
- type Float64Field
- func (f Float64Field) Between(start, end float64) Condition
- func (f Float64Field) ColumnName() string
- func (f Float64Field) Eq(value float64) Condition
- func (f Float64Field) Gt(value float64) Condition
- func (f Float64Field) Gte(value float64) Condition
- func (f Float64Field) In(values ...float64) Condition
- func (f Float64Field) IsNotNull() Condition
- func (f Float64Field) IsNull() Condition
- func (f Float64Field) Lt(value float64) Condition
- func (f Float64Field) Lte(value float64) Condition
- func (f Float64Field) Ne(value float64) Condition
- func (f Float64Field) NotIn(values ...float64) Condition
- type Int64Field
- func (f Int64Field) Between(start, end int64) Condition
- func (f Int64Field) ColumnName() string
- func (f Int64Field) Eq(value int64) Condition
- func (f Int64Field) Gt(value int64) Condition
- func (f Int64Field) Gte(value int64) Condition
- func (f Int64Field) In(values ...int64) Condition
- func (f Int64Field) IsNotNull() Condition
- func (f Int64Field) IsNull() Condition
- func (f Int64Field) Lt(value int64) Condition
- func (f Int64Field) Lte(value int64) Condition
- func (f Int64Field) Ne(value int64) Condition
- func (f Int64Field) NotIn(values ...int64) Condition
- type IntField
- func (f IntField) Between(start, end int) Condition
- func (f IntField) ColumnName() string
- func (f IntField) Eq(value int) Condition
- func (f IntField) Gt(value int) Condition
- func (f IntField) Gte(value int) Condition
- func (f IntField) In(values ...int) Condition
- func (f IntField) IsNotNull() Condition
- func (f IntField) IsNull() Condition
- func (f IntField) Lt(value int) Condition
- func (f IntField) Lte(value int) Condition
- func (f IntField) Ne(value int) Condition
- func (f IntField) NotIn(values ...int) Condition
- type LogicalOperator
- type Operator
- type OptionalBoolField
- func (f OptionalBoolField) ColumnName() string
- func (f OptionalBoolField) Eq(value bool) Condition
- func (f OptionalBoolField) In(values ...bool) Condition
- func (f OptionalBoolField) IsNotNull() Condition
- func (f OptionalBoolField) IsNull() Condition
- func (f OptionalBoolField) Ne(value bool) Condition
- func (f OptionalBoolField) NotIn(values ...bool) Condition
- type OptionalFloat64Field
- func (f OptionalFloat64Field) Between(start, end float64) Condition
- func (f OptionalFloat64Field) ColumnName() string
- func (f OptionalFloat64Field) Eq(value float64) Condition
- func (f OptionalFloat64Field) Gt(value float64) Condition
- func (f OptionalFloat64Field) Gte(value float64) Condition
- func (f OptionalFloat64Field) In(values ...float64) Condition
- func (f OptionalFloat64Field) IsNotNull() Condition
- func (f OptionalFloat64Field) IsNull() Condition
- func (f OptionalFloat64Field) Lt(value float64) Condition
- func (f OptionalFloat64Field) Lte(value float64) Condition
- func (f OptionalFloat64Field) Ne(value float64) Condition
- func (f OptionalFloat64Field) NotIn(values ...float64) Condition
- type OptionalInt64Field
- func (f OptionalInt64Field) Between(start, end int64) Condition
- func (f OptionalInt64Field) ColumnName() string
- func (f OptionalInt64Field) Eq(value int64) Condition
- func (f OptionalInt64Field) Gt(value int64) Condition
- func (f OptionalInt64Field) Gte(value int64) Condition
- func (f OptionalInt64Field) In(values ...int64) Condition
- func (f OptionalInt64Field) IsNotNull() Condition
- func (f OptionalInt64Field) IsNull() Condition
- func (f OptionalInt64Field) Lt(value int64) Condition
- func (f OptionalInt64Field) Lte(value int64) Condition
- func (f OptionalInt64Field) Ne(value int64) Condition
- func (f OptionalInt64Field) NotIn(values ...int64) Condition
- type OptionalIntField
- func (f OptionalIntField) Between(start, end int) Condition
- func (f OptionalIntField) ColumnName() string
- func (f OptionalIntField) Eq(value int) Condition
- func (f OptionalIntField) Gt(value int) Condition
- func (f OptionalIntField) Gte(value int) Condition
- func (f OptionalIntField) In(values ...int) Condition
- func (f OptionalIntField) IsNotNull() Condition
- func (f OptionalIntField) IsNull() Condition
- func (f OptionalIntField) Lt(value int) Condition
- func (f OptionalIntField) Lte(value int) Condition
- func (f OptionalIntField) Ne(value int) Condition
- func (f OptionalIntField) NotIn(values ...int) Condition
- type OptionalStringField
- func (f OptionalStringField) ColumnName() string
- func (f OptionalStringField) Eq(value string) Condition
- func (f OptionalStringField) In(values ...string) Condition
- func (f OptionalStringField) IsNotNull() Condition
- func (f OptionalStringField) IsNull() Condition
- func (f OptionalStringField) Like(pattern string) Condition
- func (f OptionalStringField) Ne(value string) Condition
- func (f OptionalStringField) NotIn(values ...string) Condition
- func (f OptionalStringField) NotLike(pattern string) Condition
- type OrderBy
- type StringField
- func (f StringField) ColumnName() string
- func (f StringField) Eq(value string) Condition
- func (f StringField) In(values ...string) Condition
- func (f StringField) IsNotNull() Condition
- func (f StringField) IsNull() Condition
- func (f StringField) Like(pattern string) Condition
- func (f StringField) Ne(value string) Condition
- func (f StringField) NotIn(values ...string) Condition
- func (f StringField) NotLike(pattern string) Condition
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetFieldIndices ¶
func GetFieldIndices(dest interface{}) ([]interface{}, error)
GetFieldIndices retorna os índices dos campos de uma struct para scanning. Usado internamente pelo scanner.
Types ¶
type BoolField ¶
type BoolField struct {
// contains filtered or unexported fields
}
BoolField representa um campo booleano.
func NewBoolField ¶
func (BoolField) ColumnName ¶
type Builder ¶
type Builder[T any] struct { // contains filtered or unexported fields }
Builder é o query builder genérico type-safe. T é o tipo do modelo sendo consultado.
func NewBuilder ¶
func NewBuilder[T any](executor core.Executor, dialect core.Dialect, logger core.Logger, tableName string) *Builder[T]
NewBuilder cria um novo query builder.
func (*Builder[T]) Find ¶
Find executa a query e retorna um slice de T. Esta é a função mágica que retorna []T sem precisar de *[]T!
func (*Builder[T]) First ¶
First retorna o primeiro resultado ou erro se não encontrado. IMUTÁVEL: Cria uma cópia do builder com LIMIT 1.
func (*Builder[T]) Limit ¶
Limit define o LIMIT. IMUTÁVEL: Retorna um novo builder sem modificar o original.
func (*Builder[T]) Offset ¶
Offset define o OFFSET. IMUTÁVEL: Retorna um novo builder sem modificar o original.
func (*Builder[T]) OrderByAsc ¶
OrderByAsc adiciona ORDER BY ASC. IMUTÁVEL: Retorna um novo builder sem modificar o original.
func (*Builder[T]) OrderByDesc ¶
OrderByDesc adiciona ORDER BY DESC. IMUTÁVEL: Retorna um novo builder sem modificar o original.
type Comparador ¶
type Comparador[T any] interface { Field Eq(value T) Condition Ne(value T) Condition In(values ...T) Condition NotIn(values ...T) Condition IsNull() Condition IsNotNull() Condition }
Comparador genérico para criar condições.
type ComparadorOrdenavel ¶
type ComparadorOrdenavel[T any] interface { Comparador[T] }
ComparadorOrdenavel adiciona operadores de comparação.
type ConditionGroup ¶
type ConditionGroup struct {
Conditions []interface{} // pode ser Condition ou ConditionGroup
Operator LogicalOperator
}
ConditionGroup agrupa múltiplas condições com um operador lógico.
type Field ¶
type Field interface {
ColumnName() string
}
Field é a interface base para todos os tipos de campos. Cada campo conhece seu nome de coluna no banco de dados.
type Float64Field ¶
type Float64Field struct {
// contains filtered or unexported fields
}
Float64Field representa um campo float64.
func NewFloat64Field ¶
func NewFloat64Field(column string) Float64Field
func (Float64Field) Between ¶
func (f Float64Field) Between(start, end float64) Condition
func (Float64Field) ColumnName ¶
func (f Float64Field) ColumnName() string
func (Float64Field) Eq ¶
func (f Float64Field) Eq(value float64) Condition
func (Float64Field) Gt ¶
func (f Float64Field) Gt(value float64) Condition
func (Float64Field) Gte ¶
func (f Float64Field) Gte(value float64) Condition
func (Float64Field) In ¶
func (f Float64Field) In(values ...float64) Condition
func (Float64Field) IsNotNull ¶
func (f Float64Field) IsNotNull() Condition
func (Float64Field) IsNull ¶
func (f Float64Field) IsNull() Condition
func (Float64Field) Lt ¶
func (f Float64Field) Lt(value float64) Condition
func (Float64Field) Lte ¶
func (f Float64Field) Lte(value float64) Condition
func (Float64Field) Ne ¶
func (f Float64Field) Ne(value float64) Condition
func (Float64Field) NotIn ¶
func (f Float64Field) NotIn(values ...float64) Condition
type Int64Field ¶
type Int64Field struct {
// contains filtered or unexported fields
}
Int64Field representa um campo int64.
func NewInt64Field ¶
func NewInt64Field(column string) Int64Field
func (Int64Field) Between ¶
func (f Int64Field) Between(start, end int64) Condition
func (Int64Field) ColumnName ¶
func (f Int64Field) ColumnName() string
func (Int64Field) Eq ¶
func (f Int64Field) Eq(value int64) Condition
func (Int64Field) Gt ¶
func (f Int64Field) Gt(value int64) Condition
func (Int64Field) Gte ¶
func (f Int64Field) Gte(value int64) Condition
func (Int64Field) In ¶
func (f Int64Field) In(values ...int64) Condition
func (Int64Field) IsNotNull ¶
func (f Int64Field) IsNotNull() Condition
func (Int64Field) IsNull ¶
func (f Int64Field) IsNull() Condition
func (Int64Field) Lt ¶
func (f Int64Field) Lt(value int64) Condition
func (Int64Field) Lte ¶
func (f Int64Field) Lte(value int64) Condition
func (Int64Field) Ne ¶
func (f Int64Field) Ne(value int64) Condition
func (Int64Field) NotIn ¶
func (f Int64Field) NotIn(values ...int64) Condition
type IntField ¶
type IntField struct {
// contains filtered or unexported fields
}
IntField representa um campo int com operadores numéricos.
func NewIntField ¶
func (IntField) ColumnName ¶
type LogicalOperator ¶
type LogicalOperator string
LogicalOperator representa operadores lógicos (AND, OR).
const ( LogicalAnd LogicalOperator = "AND" LogicalOr LogicalOperator = "OR" )
type Operator ¶
type Operator string
Operator representa um operador SQL.
const ( OpEq Operator = "=" OpNe Operator = "!=" OpGt Operator = ">" OpGte Operator = ">=" OpLt Operator = "<" OpLte Operator = "<=" OpLike Operator = "LIKE" OpNotLike Operator = "NOT LIKE" OpIn Operator = "IN" OpNotIn Operator = "NOT IN" OpBetween Operator = "BETWEEN" OpIsNull Operator = "IS NULL" OpIsNotNull Operator = "IS NOT NULL" )
type OptionalBoolField ¶
type OptionalBoolField struct {
// contains filtered or unexported fields
}
OptionalBoolField representa um campo booleano que pode ser NULL.
func NewOptionalBoolField ¶
func NewOptionalBoolField(column string) OptionalBoolField
func (OptionalBoolField) ColumnName ¶
func (f OptionalBoolField) ColumnName() string
func (OptionalBoolField) Eq ¶
func (f OptionalBoolField) Eq(value bool) Condition
func (OptionalBoolField) In ¶
func (f OptionalBoolField) In(values ...bool) Condition
func (OptionalBoolField) IsNotNull ¶
func (f OptionalBoolField) IsNotNull() Condition
func (OptionalBoolField) IsNull ¶
func (f OptionalBoolField) IsNull() Condition
func (OptionalBoolField) Ne ¶
func (f OptionalBoolField) Ne(value bool) Condition
func (OptionalBoolField) NotIn ¶
func (f OptionalBoolField) NotIn(values ...bool) Condition
type OptionalFloat64Field ¶
type OptionalFloat64Field struct {
// contains filtered or unexported fields
}
OptionalFloat64Field representa um campo float64 que pode ser NULL.
func NewOptionalFloat64Field ¶
func NewOptionalFloat64Field(column string) OptionalFloat64Field
func (OptionalFloat64Field) Between ¶
func (f OptionalFloat64Field) Between(start, end float64) Condition
func (OptionalFloat64Field) ColumnName ¶
func (f OptionalFloat64Field) ColumnName() string
func (OptionalFloat64Field) Eq ¶
func (f OptionalFloat64Field) Eq(value float64) Condition
func (OptionalFloat64Field) Gt ¶
func (f OptionalFloat64Field) Gt(value float64) Condition
func (OptionalFloat64Field) Gte ¶
func (f OptionalFloat64Field) Gte(value float64) Condition
func (OptionalFloat64Field) In ¶
func (f OptionalFloat64Field) In(values ...float64) Condition
func (OptionalFloat64Field) IsNotNull ¶
func (f OptionalFloat64Field) IsNotNull() Condition
func (OptionalFloat64Field) IsNull ¶
func (f OptionalFloat64Field) IsNull() Condition
func (OptionalFloat64Field) Lt ¶
func (f OptionalFloat64Field) Lt(value float64) Condition
func (OptionalFloat64Field) Lte ¶
func (f OptionalFloat64Field) Lte(value float64) Condition
func (OptionalFloat64Field) Ne ¶
func (f OptionalFloat64Field) Ne(value float64) Condition
func (OptionalFloat64Field) NotIn ¶
func (f OptionalFloat64Field) NotIn(values ...float64) Condition
type OptionalInt64Field ¶
type OptionalInt64Field struct {
// contains filtered or unexported fields
}
OptionalInt64Field representa um campo int64 que pode ser NULL.
func NewOptionalInt64Field ¶
func NewOptionalInt64Field(column string) OptionalInt64Field
func (OptionalInt64Field) Between ¶
func (f OptionalInt64Field) Between(start, end int64) Condition
func (OptionalInt64Field) ColumnName ¶
func (f OptionalInt64Field) ColumnName() string
func (OptionalInt64Field) Eq ¶
func (f OptionalInt64Field) Eq(value int64) Condition
func (OptionalInt64Field) Gt ¶
func (f OptionalInt64Field) Gt(value int64) Condition
func (OptionalInt64Field) Gte ¶
func (f OptionalInt64Field) Gte(value int64) Condition
func (OptionalInt64Field) In ¶
func (f OptionalInt64Field) In(values ...int64) Condition
func (OptionalInt64Field) IsNotNull ¶
func (f OptionalInt64Field) IsNotNull() Condition
func (OptionalInt64Field) IsNull ¶
func (f OptionalInt64Field) IsNull() Condition
func (OptionalInt64Field) Lt ¶
func (f OptionalInt64Field) Lt(value int64) Condition
func (OptionalInt64Field) Lte ¶
func (f OptionalInt64Field) Lte(value int64) Condition
func (OptionalInt64Field) Ne ¶
func (f OptionalInt64Field) Ne(value int64) Condition
func (OptionalInt64Field) NotIn ¶
func (f OptionalInt64Field) NotIn(values ...int64) Condition
type OptionalIntField ¶
type OptionalIntField struct {
// contains filtered or unexported fields
}
OptionalIntField representa um campo int que pode ser NULL.
func NewOptionalIntField ¶
func NewOptionalIntField(column string) OptionalIntField
func (OptionalIntField) Between ¶
func (f OptionalIntField) Between(start, end int) Condition
func (OptionalIntField) ColumnName ¶
func (f OptionalIntField) ColumnName() string
func (OptionalIntField) Eq ¶
func (f OptionalIntField) Eq(value int) Condition
func (OptionalIntField) Gt ¶
func (f OptionalIntField) Gt(value int) Condition
func (OptionalIntField) Gte ¶
func (f OptionalIntField) Gte(value int) Condition
func (OptionalIntField) In ¶
func (f OptionalIntField) In(values ...int) Condition
func (OptionalIntField) IsNotNull ¶
func (f OptionalIntField) IsNotNull() Condition
func (OptionalIntField) IsNull ¶
func (f OptionalIntField) IsNull() Condition
func (OptionalIntField) Lt ¶
func (f OptionalIntField) Lt(value int) Condition
func (OptionalIntField) Lte ¶
func (f OptionalIntField) Lte(value int) Condition
func (OptionalIntField) Ne ¶
func (f OptionalIntField) Ne(value int) Condition
func (OptionalIntField) NotIn ¶
func (f OptionalIntField) NotIn(values ...int) Condition
type OptionalStringField ¶
type OptionalStringField struct {
// contains filtered or unexported fields
}
OptionalStringField representa um campo string que pode ser NULL. Usa core.Optional[string] para tipagem segura.
func NewOptionalStringField ¶
func NewOptionalStringField(column string) OptionalStringField
func (OptionalStringField) ColumnName ¶
func (f OptionalStringField) ColumnName() string
func (OptionalStringField) Eq ¶
func (f OptionalStringField) Eq(value string) Condition
func (OptionalStringField) In ¶
func (f OptionalStringField) In(values ...string) Condition
func (OptionalStringField) IsNotNull ¶
func (f OptionalStringField) IsNotNull() Condition
func (OptionalStringField) IsNull ¶
func (f OptionalStringField) IsNull() Condition
func (OptionalStringField) Like ¶
func (f OptionalStringField) Like(pattern string) Condition
func (OptionalStringField) Ne ¶
func (f OptionalStringField) Ne(value string) Condition
func (OptionalStringField) NotIn ¶
func (f OptionalStringField) NotIn(values ...string) Condition
func (OptionalStringField) NotLike ¶
func (f OptionalStringField) NotLike(pattern string) Condition
type StringField ¶
type StringField struct {
// contains filtered or unexported fields
}
StringField representa um campo string com operadores específicos.
func NewStringField ¶
func NewStringField(column string) StringField
func (StringField) ColumnName ¶
func (f StringField) ColumnName() string
func (StringField) Eq ¶
func (f StringField) Eq(value string) Condition
func (StringField) In ¶
func (f StringField) In(values ...string) Condition
func (StringField) IsNotNull ¶
func (f StringField) IsNotNull() Condition
func (StringField) IsNull ¶
func (f StringField) IsNull() Condition
func (StringField) Like ¶
func (f StringField) Like(pattern string) Condition
func (StringField) Ne ¶
func (f StringField) Ne(value string) Condition
func (StringField) NotIn ¶
func (f StringField) NotIn(values ...string) Condition
func (StringField) NotLike ¶
func (f StringField) NotLike(pattern string) Condition