Documentation
¶
Index ¶
- func ConditionToStatement(c query.Condition) (sql.Statement, error)
- func FilterToStatement(f query.Filter) (sql.Statement, error)
- func Query(db *sql.DB, q query.Query) (*sql.Rows, error)
- func QueryToStatement(q query.Query) (sql.Statement, error)
- type LeftIsNotColumn
- type ScanError
- type StatementBuilder
- func (s *StatementBuilder) Build() sql.Statement
- func (s *StatementBuilder) WriteColumn(n query.Named) error
- func (s *StatementBuilder) WriteCondition(cond query.Condition) error
- func (s *StatementBuilder) WriteFilter(f query.Filter) error
- func (s *StatementBuilder) WriteKey(key string) *StatementBuilder
- func (s *StatementBuilder) WriteNamed(n query.Named) *StatementBuilder
- func (s *StatementBuilder) WriteQuery(q query.Query) error
- func (s *StatementBuilder) WriteRule(rule query.Rule) error
- func (s *StatementBuilder) WriteSchema(n query.Named) error
- type UnixTimestamp
- type UnsupportedOperation
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConditionToStatement ¶
ConditionToStatement constructs partial statement for provided query.Condition
func FilterToStatement ¶
FilterToStatement constructs partial statement for provided query.Filter
Types ¶
type LeftIsNotColumn ¶
type LeftIsNotColumn struct {
Real interface{}
}
LeftIsNotColumn is error, returned when no column definition found on left side of rule
func (LeftIsNotColumn) Error ¶
func (LeftIsNotColumn) Error() string
type ScanError ¶
ScanError is error, emitted on scan error (when data from MySQL writes into structs)
type StatementBuilder ¶
type StatementBuilder struct {
// contains filtered or unexported fields
}
StatementBuilder is component, used to create statements from conditions and filters
func NewStatementBuilder ¶
func NewStatementBuilder() *StatementBuilder
NewStatementBuilder returns new StatementBuilder struct
func (*StatementBuilder) Build ¶
func (s *StatementBuilder) Build() sql.Statement
Build returns statement
func (*StatementBuilder) WriteColumn ¶
func (s *StatementBuilder) WriteColumn(n query.Named) error
WriteColumn writes column name, aliases are supported
func (*StatementBuilder) WriteCondition ¶
func (s *StatementBuilder) WriteCondition(cond query.Condition) error
WriteCondition converts condition into SQL and writes it into buffer
func (*StatementBuilder) WriteFilter ¶
func (s *StatementBuilder) WriteFilter(f query.Filter) error
WriteFilter converts filter into SQL and writes it into buffer
func (*StatementBuilder) WriteKey ¶
func (s *StatementBuilder) WriteKey(key string) *StatementBuilder
WriteKey writes table or column name
func (*StatementBuilder) WriteNamed ¶
func (s *StatementBuilder) WriteNamed(n query.Named) *StatementBuilder
WriteNamed writes named entity
func (*StatementBuilder) WriteQuery ¶
func (s *StatementBuilder) WriteQuery(q query.Query) error
WriteQuery writes whole query into statement builder
func (*StatementBuilder) WriteRule ¶
func (s *StatementBuilder) WriteRule(rule query.Rule) error
WriteRule writes rule into builder
func (*StatementBuilder) WriteSchema ¶
func (s *StatementBuilder) WriteSchema(n query.Named) error
WriteSchema writes schema (table) name, aliases not supported
type UnixTimestamp ¶
UnixTimestamp is wrapper over unix timestamp stored in database in seconds
func (*UnixTimestamp) Scan ¶
func (u *UnixTimestamp) Scan(src interface{}) error
Scan is sql.Scanner interface implementation
type UnsupportedOperation ¶
UnsupportedOperation is error, returned when unsupported operation requested
func (UnsupportedOperation) Error ¶
func (u UnsupportedOperation) Error() string