Update xorm and dependencies vendor for feature to dump to other database (#565)
* update xorm and dependencies vendor for feature to dump to other database * fix golint
This commit is contained in:
parent
70900bd167
commit
980dd0bf51
54 changed files with 3135 additions and 2619 deletions
4
vendor/github.com/go-xorm/builder/README.md
generated
vendored
4
vendor/github.com/go-xorm/builder/README.md
generated
vendored
|
@ -1,6 +1,8 @@
|
|||
# SQL builder
|
||||
|
||||
Package builder is a simple and powerful sql builder for Go.
|
||||
[](https://circleci.com/gh/go-xorm/builder/tree/master)
|
||||
|
||||
Package builder is a lightweight and fast SQL builder for Go and XORM.
|
||||
|
||||
Make sure you have installed Go 1.1+ and then:
|
||||
|
||||
|
|
25
vendor/github.com/go-xorm/builder/builder.go
generated
vendored
25
vendor/github.com/go-xorm/builder/builder.go
generated
vendored
|
@ -1,3 +1,7 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
type optype byte
|
||||
|
@ -16,6 +20,7 @@ type join struct {
|
|||
joinCond Cond
|
||||
}
|
||||
|
||||
// Builder describes a SQL statement
|
||||
type Builder struct {
|
||||
optype
|
||||
tableName string
|
||||
|
@ -26,41 +31,49 @@ type Builder struct {
|
|||
updates []Eq
|
||||
}
|
||||
|
||||
// Select creates a select Builder
|
||||
func Select(cols ...string) *Builder {
|
||||
builder := &Builder{cond: NewCond()}
|
||||
return builder.Select(cols...)
|
||||
}
|
||||
|
||||
// Insert creates an insert Builder
|
||||
func Insert(eq Eq) *Builder {
|
||||
builder := &Builder{cond: NewCond()}
|
||||
return builder.Insert(eq)
|
||||
}
|
||||
|
||||
// Update creates an update Builder
|
||||
func Update(updates ...Eq) *Builder {
|
||||
builder := &Builder{cond: NewCond()}
|
||||
return builder.Update(updates...)
|
||||
}
|
||||
|
||||
// Delete creates a delete Builder
|
||||
func Delete(conds ...Cond) *Builder {
|
||||
builder := &Builder{cond: NewCond()}
|
||||
return builder.Delete(conds...)
|
||||
}
|
||||
|
||||
// Where sets where SQL
|
||||
func (b *Builder) Where(cond Cond) *Builder {
|
||||
b.cond = b.cond.And(cond)
|
||||
return b
|
||||
}
|
||||
|
||||
// From sets the table name
|
||||
func (b *Builder) From(tableName string) *Builder {
|
||||
b.tableName = tableName
|
||||
return b
|
||||
}
|
||||
|
||||
// Into sets insert table name
|
||||
func (b *Builder) Into(tableName string) *Builder {
|
||||
b.tableName = tableName
|
||||
return b
|
||||
}
|
||||
|
||||
// Join sets join table and contions
|
||||
func (b *Builder) Join(joinType, joinTable string, joinCond interface{}) *Builder {
|
||||
switch joinCond.(type) {
|
||||
case Cond:
|
||||
|
@ -72,60 +85,72 @@ func (b *Builder) Join(joinType, joinTable string, joinCond interface{}) *Builde
|
|||
return b
|
||||
}
|
||||
|
||||
// InnerJoin sets inner join
|
||||
func (b *Builder) InnerJoin(joinTable string, joinCond interface{}) *Builder {
|
||||
return b.Join("INNER", joinTable, joinCond)
|
||||
}
|
||||
|
||||
// LeftJoin sets left join SQL
|
||||
func (b *Builder) LeftJoin(joinTable string, joinCond interface{}) *Builder {
|
||||
return b.Join("LEFT", joinTable, joinCond)
|
||||
}
|
||||
|
||||
// RightJoin sets right join SQL
|
||||
func (b *Builder) RightJoin(joinTable string, joinCond interface{}) *Builder {
|
||||
return b.Join("RIGHT", joinTable, joinCond)
|
||||
}
|
||||
|
||||
// CrossJoin sets cross join SQL
|
||||
func (b *Builder) CrossJoin(joinTable string, joinCond interface{}) *Builder {
|
||||
return b.Join("CROSS", joinTable, joinCond)
|
||||
}
|
||||
|
||||
// FullJoin sets full join SQL
|
||||
func (b *Builder) FullJoin(joinTable string, joinCond interface{}) *Builder {
|
||||
return b.Join("FULL", joinTable, joinCond)
|
||||
}
|
||||
|
||||
// Select sets select SQL
|
||||
func (b *Builder) Select(cols ...string) *Builder {
|
||||
b.selects = cols
|
||||
b.optype = selectType
|
||||
return b
|
||||
}
|
||||
|
||||
// And sets AND condition
|
||||
func (b *Builder) And(cond Cond) *Builder {
|
||||
b.cond = And(b.cond, cond)
|
||||
return b
|
||||
}
|
||||
|
||||
// Or sets OR condition
|
||||
func (b *Builder) Or(cond Cond) *Builder {
|
||||
b.cond = Or(b.cond, cond)
|
||||
return b
|
||||
}
|
||||
|
||||
// Insert sets insert SQL
|
||||
func (b *Builder) Insert(eq Eq) *Builder {
|
||||
b.inserts = eq
|
||||
b.optype = insertType
|
||||
return b
|
||||
}
|
||||
|
||||
// Update sets update SQL
|
||||
func (b *Builder) Update(updates ...Eq) *Builder {
|
||||
b.updates = updates
|
||||
b.optype = updateType
|
||||
return b
|
||||
}
|
||||
|
||||
// Delete sets delete SQL
|
||||
func (b *Builder) Delete(conds ...Cond) *Builder {
|
||||
b.cond = b.cond.And(conds...)
|
||||
b.optype = deleteType
|
||||
return b
|
||||
}
|
||||
|
||||
// WriteTo implements Writer interface
|
||||
func (b *Builder) WriteTo(w Writer) error {
|
||||
switch b.optype {
|
||||
case condType:
|
||||
|
|
4
vendor/github.com/go-xorm/builder/builder_delete.go
generated
vendored
4
vendor/github.com/go-xorm/builder/builder_delete.go
generated
vendored
|
@ -1,3 +1,7 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import (
|
||||
|
|
4
vendor/github.com/go-xorm/builder/builder_insert.go
generated
vendored
4
vendor/github.com/go-xorm/builder/builder_insert.go
generated
vendored
|
@ -1,3 +1,7 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import (
|
||||
|
|
4
vendor/github.com/go-xorm/builder/builder_select.go
generated
vendored
4
vendor/github.com/go-xorm/builder/builder_select.go
generated
vendored
|
@ -1,3 +1,7 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import (
|
||||
|
|
4
vendor/github.com/go-xorm/builder/builder_update.go
generated
vendored
4
vendor/github.com/go-xorm/builder/builder_update.go
generated
vendored
|
@ -1,3 +1,7 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import (
|
||||
|
|
12
vendor/github.com/go-xorm/builder/circle.yml
generated
vendored
Normal file
12
vendor/github.com/go-xorm/builder/circle.yml
generated
vendored
Normal file
|
@ -0,0 +1,12 @@
|
|||
dependencies:
|
||||
override:
|
||||
# './...' is a relative pattern which means all subdirectories
|
||||
- go get -t -d -v ./...
|
||||
- go build -v
|
||||
- go get -u github.com/golang/lint/golint
|
||||
|
||||
test:
|
||||
override:
|
||||
# './...' is a relative pattern which means all subdirectories
|
||||
- golint ./...
|
||||
- go test -v -race
|
23
vendor/github.com/go-xorm/builder/cond.go
generated
vendored
23
vendor/github.com/go-xorm/builder/cond.go
generated
vendored
|
@ -1,3 +1,7 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import (
|
||||
|
@ -5,31 +9,39 @@ import (
|
|||
"io"
|
||||
)
|
||||
|
||||
// Writer defines the interface
|
||||
type Writer interface {
|
||||
io.Writer
|
||||
Append(...interface{})
|
||||
}
|
||||
|
||||
type stringWriter struct {
|
||||
var _ Writer = NewWriter()
|
||||
|
||||
// BytesWriter implments Writer and save SQL in bytes.Buffer
|
||||
type BytesWriter struct {
|
||||
writer *bytes.Buffer
|
||||
buffer []byte
|
||||
args []interface{}
|
||||
}
|
||||
|
||||
func NewWriter() *stringWriter {
|
||||
w := &stringWriter{}
|
||||
// NewWriter creates a new string writer
|
||||
func NewWriter() *BytesWriter {
|
||||
w := &BytesWriter{}
|
||||
w.writer = bytes.NewBuffer(w.buffer)
|
||||
return w
|
||||
}
|
||||
|
||||
func (s *stringWriter) Write(buf []byte) (int, error) {
|
||||
// Write writes data to Writer
|
||||
func (s *BytesWriter) Write(buf []byte) (int, error) {
|
||||
return s.writer.Write(buf)
|
||||
}
|
||||
|
||||
func (s *stringWriter) Append(args ...interface{}) {
|
||||
// Append appends args to Writer
|
||||
func (s *BytesWriter) Append(args ...interface{}) {
|
||||
s.args = append(s.args, args...)
|
||||
}
|
||||
|
||||
// Cond defines an interface
|
||||
type Cond interface {
|
||||
WriteTo(Writer) error
|
||||
And(...Cond) Cond
|
||||
|
@ -41,6 +53,7 @@ type condEmpty struct{}
|
|||
|
||||
var _ Cond = condEmpty{}
|
||||
|
||||
// NewCond creates an empty condition
|
||||
func NewCond() Cond {
|
||||
return condEmpty{}
|
||||
}
|
||||
|
|
5
vendor/github.com/go-xorm/builder/cond_and.go
generated
vendored
5
vendor/github.com/go-xorm/builder/cond_and.go
generated
vendored
|
@ -1,3 +1,7 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import "fmt"
|
||||
|
@ -6,6 +10,7 @@ type condAnd []Cond
|
|||
|
||||
var _ Cond = condAnd{}
|
||||
|
||||
// And generates AND conditions
|
||||
func And(conds ...Cond) Cond {
|
||||
var result = make(condAnd, 0, len(conds))
|
||||
for _, cond := range conds {
|
||||
|
|
10
vendor/github.com/go-xorm/builder/cond_between.go
generated
vendored
10
vendor/github.com/go-xorm/builder/cond_between.go
generated
vendored
|
@ -1,8 +1,12 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import "fmt"
|
||||
|
||||
// Between
|
||||
// Between implmentes between condition
|
||||
type Between struct {
|
||||
Col string
|
||||
LessVal interface{}
|
||||
|
@ -11,6 +15,7 @@ type Between struct {
|
|||
|
||||
var _ Cond = Between{}
|
||||
|
||||
// WriteTo write data to Writer
|
||||
func (between Between) WriteTo(w Writer) error {
|
||||
if _, err := fmt.Fprintf(w, "%s BETWEEN ? AND ?", between.Col); err != nil {
|
||||
return err
|
||||
|
@ -19,14 +24,17 @@ func (between Between) WriteTo(w Writer) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
// And implments And with other conditions
|
||||
func (between Between) And(conds ...Cond) Cond {
|
||||
return And(between, And(conds...))
|
||||
}
|
||||
|
||||
// Or implments Or with other conditions
|
||||
func (between Between) Or(conds ...Cond) Cond {
|
||||
return Or(between, Or(conds...))
|
||||
}
|
||||
|
||||
// IsValid tests if the condition is valid
|
||||
func (between Between) IsValid() bool {
|
||||
return len(between.Col) > 0
|
||||
}
|
||||
|
|
30
vendor/github.com/go-xorm/builder/cond_compare.go
generated
vendored
30
vendor/github.com/go-xorm/builder/cond_compare.go
generated
vendored
|
@ -1,8 +1,12 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import "fmt"
|
||||
|
||||
// WriteMap
|
||||
// WriteMap writes conditions' SQL to Writer, op could be =, <>, >, <, <=, >= and etc.
|
||||
func WriteMap(w Writer, data map[string]interface{}, op string) error {
|
||||
var args = make([]interface{}, 0, len(data))
|
||||
var i = 0
|
||||
|
@ -49,86 +53,102 @@ func WriteMap(w Writer, data map[string]interface{}, op string) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
// Lt
|
||||
// Lt defines < condition
|
||||
type Lt map[string]interface{}
|
||||
|
||||
var _ Cond = Lt{}
|
||||
|
||||
// WriteTo write SQL to Writer
|
||||
func (lt Lt) WriteTo(w Writer) error {
|
||||
return WriteMap(w, lt, "<")
|
||||
}
|
||||
|
||||
// And implements And with other conditions
|
||||
func (lt Lt) And(conds ...Cond) Cond {
|
||||
return condAnd{lt, And(conds...)}
|
||||
}
|
||||
|
||||
// Or implements Or with other conditions
|
||||
func (lt Lt) Or(conds ...Cond) Cond {
|
||||
return condOr{lt, Or(conds...)}
|
||||
}
|
||||
|
||||
// IsValid tests if this Eq is valid
|
||||
func (lt Lt) IsValid() bool {
|
||||
return len(lt) > 0
|
||||
}
|
||||
|
||||
// Lte
|
||||
// Lte defines <= condition
|
||||
type Lte map[string]interface{}
|
||||
|
||||
var _ Cond = Lte{}
|
||||
|
||||
// WriteTo write SQL to Writer
|
||||
func (lte Lte) WriteTo(w Writer) error {
|
||||
return WriteMap(w, lte, "<=")
|
||||
}
|
||||
|
||||
// And implements And with other conditions
|
||||
func (lte Lte) And(conds ...Cond) Cond {
|
||||
return And(lte, And(conds...))
|
||||
}
|
||||
|
||||
// Or implements Or with other conditions
|
||||
func (lte Lte) Or(conds ...Cond) Cond {
|
||||
return Or(lte, Or(conds...))
|
||||
}
|
||||
|
||||
// IsValid tests if this Eq is valid
|
||||
func (lte Lte) IsValid() bool {
|
||||
return len(lte) > 0
|
||||
}
|
||||
|
||||
// Gt
|
||||
// Gt defines > condition
|
||||
type Gt map[string]interface{}
|
||||
|
||||
var _ Cond = Gt{}
|
||||
|
||||
// WriteTo write SQL to Writer
|
||||
func (gt Gt) WriteTo(w Writer) error {
|
||||
return WriteMap(w, gt, ">")
|
||||
}
|
||||
|
||||
// And implements And with other conditions
|
||||
func (gt Gt) And(conds ...Cond) Cond {
|
||||
return And(gt, And(conds...))
|
||||
}
|
||||
|
||||
// Or implements Or with other conditions
|
||||
func (gt Gt) Or(conds ...Cond) Cond {
|
||||
return Or(gt, Or(conds...))
|
||||
}
|
||||
|
||||
// IsValid tests if this Eq is valid
|
||||
func (gt Gt) IsValid() bool {
|
||||
return len(gt) > 0
|
||||
}
|
||||
|
||||
// Gte
|
||||
// Gte defines >= condition
|
||||
type Gte map[string]interface{}
|
||||
|
||||
var _ Cond = Gte{}
|
||||
|
||||
// WriteTo write SQL to Writer
|
||||
func (gte Gte) WriteTo(w Writer) error {
|
||||
return WriteMap(w, gte, ">=")
|
||||
}
|
||||
|
||||
// And implements And with other conditions
|
||||
func (gte Gte) And(conds ...Cond) Cond {
|
||||
return And(gte, And(conds...))
|
||||
}
|
||||
|
||||
// Or implements Or with other conditions
|
||||
func (gte Gte) Or(conds ...Cond) Cond {
|
||||
return Or(gte, Or(conds...))
|
||||
}
|
||||
|
||||
// IsValid tests if this Eq is valid
|
||||
func (gte Gte) IsValid() bool {
|
||||
return len(gte) > 0
|
||||
}
|
||||
|
|
11
vendor/github.com/go-xorm/builder/cond_eq.go
generated
vendored
11
vendor/github.com/go-xorm/builder/cond_eq.go
generated
vendored
|
@ -1,11 +1,18 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import "fmt"
|
||||
|
||||
// Incr implements a type used by Eq
|
||||
type Incr int
|
||||
|
||||
// Decr implements a type used by Eq
|
||||
type Decr int
|
||||
|
||||
// Eq defines equals conditions
|
||||
type Eq map[string]interface{}
|
||||
|
||||
var _ Cond = Eq{}
|
||||
|
@ -68,18 +75,22 @@ func (eq Eq) opWriteTo(op string, w Writer) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
// WriteTo writes SQL to Writer
|
||||
func (eq Eq) WriteTo(w Writer) error {
|
||||
return eq.opWriteTo(" AND ", w)
|
||||
}
|
||||
|
||||
// And implements And with other conditions
|
||||
func (eq Eq) And(conds ...Cond) Cond {
|
||||
return And(eq, And(conds...))
|
||||
}
|
||||
|
||||
// Or implements Or with other conditions
|
||||
func (eq Eq) Or(conds ...Cond) Cond {
|
||||
return Or(eq, Or(conds...))
|
||||
}
|
||||
|
||||
// IsValid tests if this Eq is valid
|
||||
func (eq Eq) IsValid() bool {
|
||||
return len(eq) > 0
|
||||
}
|
||||
|
|
5
vendor/github.com/go-xorm/builder/cond_expr.go
generated
vendored
5
vendor/github.com/go-xorm/builder/cond_expr.go
generated
vendored
|
@ -1,3 +1,7 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import "fmt"
|
||||
|
@ -9,6 +13,7 @@ type expr struct {
|
|||
|
||||
var _ Cond = expr{}
|
||||
|
||||
// Expr generate customerize SQL
|
||||
func Expr(sql string, args ...interface{}) Cond {
|
||||
return expr{sql, args}
|
||||
}
|
||||
|
|
5
vendor/github.com/go-xorm/builder/cond_in.go
generated
vendored
5
vendor/github.com/go-xorm/builder/cond_in.go
generated
vendored
|
@ -1,3 +1,7 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import (
|
||||
|
@ -12,6 +16,7 @@ type condIn struct {
|
|||
|
||||
var _ Cond = condIn{}
|
||||
|
||||
// In generates IN condition
|
||||
func In(col string, values ...interface{}) Cond {
|
||||
return condIn{col, values}
|
||||
}
|
||||
|
|
9
vendor/github.com/go-xorm/builder/cond_like.go
generated
vendored
9
vendor/github.com/go-xorm/builder/cond_like.go
generated
vendored
|
@ -1,11 +1,17 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import "fmt"
|
||||
|
||||
// Like defines like condition
|
||||
type Like [2]string
|
||||
|
||||
var _ Cond = Like{"", ""}
|
||||
|
||||
// WriteTo write SQL to Writer
|
||||
func (like Like) WriteTo(w Writer) error {
|
||||
if _, err := fmt.Fprintf(w, "%s LIKE ?", like[0]); err != nil {
|
||||
return err
|
||||
|
@ -14,14 +20,17 @@ func (like Like) WriteTo(w Writer) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
// And implements And with other conditions
|
||||
func (like Like) And(conds ...Cond) Cond {
|
||||
return And(like, And(conds...))
|
||||
}
|
||||
|
||||
// Or implements Or with other conditions
|
||||
func (like Like) Or(conds ...Cond) Cond {
|
||||
return Or(like, Or(conds...))
|
||||
}
|
||||
|
||||
// IsValid tests if this condition is valid
|
||||
func (like Like) IsValid() bool {
|
||||
return len(like[0]) > 0 && len(like[1]) > 0
|
||||
}
|
||||
|
|
9
vendor/github.com/go-xorm/builder/cond_neq.go
generated
vendored
9
vendor/github.com/go-xorm/builder/cond_neq.go
generated
vendored
|
@ -1,11 +1,17 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import "fmt"
|
||||
|
||||
// Neq defines not equal conditions
|
||||
type Neq map[string]interface{}
|
||||
|
||||
var _ Cond = Neq{}
|
||||
|
||||
// WriteTo writes SQL to Writer
|
||||
func (neq Neq) WriteTo(w Writer) error {
|
||||
var args = make([]interface{}, 0, len(neq))
|
||||
var i = 0
|
||||
|
@ -56,14 +62,17 @@ func (neq Neq) WriteTo(w Writer) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
// And implements And with other conditions
|
||||
func (neq Neq) And(conds ...Cond) Cond {
|
||||
return And(neq, And(conds...))
|
||||
}
|
||||
|
||||
// Or implements Or with other conditions
|
||||
func (neq Neq) Or(conds ...Cond) Cond {
|
||||
return Or(neq, Or(conds...))
|
||||
}
|
||||
|
||||
// IsValid tests if this condition is valid
|
||||
func (neq Neq) IsValid() bool {
|
||||
return len(neq) > 0
|
||||
}
|
||||
|
|
9
vendor/github.com/go-xorm/builder/cond_not.go
generated
vendored
9
vendor/github.com/go-xorm/builder/cond_not.go
generated
vendored
|
@ -1,11 +1,17 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import "fmt"
|
||||
|
||||
// Not defines NOT condition
|
||||
type Not [1]Cond
|
||||
|
||||
var _ Cond = Not{}
|
||||
|
||||
// WriteTo writes SQL to Writer
|
||||
func (not Not) WriteTo(w Writer) error {
|
||||
if _, err := fmt.Fprint(w, "NOT "); err != nil {
|
||||
return err
|
||||
|
@ -31,14 +37,17 @@ func (not Not) WriteTo(w Writer) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
// And implements And with other conditions
|
||||
func (not Not) And(conds ...Cond) Cond {
|
||||
return And(not, And(conds...))
|
||||
}
|
||||
|
||||
// Or implements Or with other conditions
|
||||
func (not Not) Or(conds ...Cond) Cond {
|
||||
return Or(not, Or(conds...))
|
||||
}
|
||||
|
||||
// IsValid tests if this condition is valid
|
||||
func (not Not) IsValid() bool {
|
||||
return not[0] != nil && not[0].IsValid()
|
||||
}
|
||||
|
|
5
vendor/github.com/go-xorm/builder/cond_notin.go
generated
vendored
5
vendor/github.com/go-xorm/builder/cond_notin.go
generated
vendored
|
@ -1,3 +1,7 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import (
|
||||
|
@ -9,6 +13,7 @@ type condNotIn condIn
|
|||
|
||||
var _ Cond = condNotIn{}
|
||||
|
||||
// NotIn generate NOT IN condition
|
||||
func NotIn(col string, values ...interface{}) Cond {
|
||||
return condNotIn{col, values}
|
||||
}
|
||||
|
|
16
vendor/github.com/go-xorm/builder/cond_null.go
generated
vendored
16
vendor/github.com/go-xorm/builder/cond_null.go
generated
vendored
|
@ -1,47 +1,59 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import "fmt"
|
||||
|
||||
// IsNull
|
||||
// IsNull defines IS NULL condition
|
||||
type IsNull [1]string
|
||||
|
||||
var _ Cond = IsNull{""}
|
||||
|
||||
// WriteTo write SQL to Writer
|
||||
func (isNull IsNull) WriteTo(w Writer) error {
|
||||
_, err := fmt.Fprintf(w, "%s IS NULL", isNull[0])
|
||||
return err
|
||||
}
|
||||
|
||||
// And implements And with other conditions
|
||||
func (isNull IsNull) And(conds ...Cond) Cond {
|
||||
return And(isNull, And(conds...))
|
||||
}
|
||||
|
||||
// Or implements Or with other conditions
|
||||
func (isNull IsNull) Or(conds ...Cond) Cond {
|
||||
return Or(isNull, Or(conds...))
|
||||
}
|
||||
|
||||
// IsValid tests if this condition is valid
|
||||
func (isNull IsNull) IsValid() bool {
|
||||
return len(isNull[0]) > 0
|
||||
}
|
||||
|
||||
// NotNull
|
||||
// NotNull defines NOT NULL condition
|
||||
type NotNull [1]string
|
||||
|
||||
var _ Cond = NotNull{""}
|
||||
|
||||
// WriteTo write SQL to Writer
|
||||
func (notNull NotNull) WriteTo(w Writer) error {
|
||||
_, err := fmt.Fprintf(w, "%s IS NOT NULL", notNull[0])
|
||||
return err
|
||||
}
|
||||
|
||||
// And implements And with other conditions
|
||||
func (notNull NotNull) And(conds ...Cond) Cond {
|
||||
return And(notNull, And(conds...))
|
||||
}
|
||||
|
||||
// Or implements Or with other conditions
|
||||
func (notNull NotNull) Or(conds ...Cond) Cond {
|
||||
return Or(notNull, Or(conds...))
|
||||
}
|
||||
|
||||
// IsValid tests if this condition is valid
|
||||
func (notNull NotNull) IsValid() bool {
|
||||
return len(notNull[0]) > 0
|
||||
}
|
||||
|
|
12
vendor/github.com/go-xorm/builder/cond_or.go
generated
vendored
12
vendor/github.com/go-xorm/builder/cond_or.go
generated
vendored
|
@ -1,3 +1,7 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import "fmt"
|
||||
|
@ -6,6 +10,7 @@ type condOr []Cond
|
|||
|
||||
var _ Cond = condOr{}
|
||||
|
||||
// Or sets OR conditions
|
||||
func Or(conds ...Cond) Cond {
|
||||
var result = make(condOr, 0, len(conds))
|
||||
for _, cond := range conds {
|
||||
|
@ -17,8 +22,9 @@ func Or(conds ...Cond) Cond {
|
|||
return result
|
||||
}
|
||||
|
||||
func (or condOr) WriteTo(w Writer) error {
|
||||
for i, cond := range or {
|
||||
// WriteTo implments Cond
|
||||
func (o condOr) WriteTo(w Writer) error {
|
||||
for i, cond := range o {
|
||||
var needQuote bool
|
||||
switch cond.(type) {
|
||||
case condAnd:
|
||||
|
@ -40,7 +46,7 @@ func (or condOr) WriteTo(w Writer) error {
|
|||
fmt.Fprint(w, ")")
|
||||
}
|
||||
|
||||
if i != len(or)-1 {
|
||||
if i != len(o)-1 {
|
||||
fmt.Fprint(w, " OR ")
|
||||
}
|
||||
}
|
||||
|
|
11
vendor/github.com/go-xorm/builder/error.go
generated
vendored
11
vendor/github.com/go-xorm/builder/error.go
generated
vendored
|
@ -1,9 +1,16 @@
|
|||
// Copyright 2016 The Xorm Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package builder
|
||||
|
||||
import "errors"
|
||||
|
||||
var (
|
||||
ErrNotSupportType = errors.New("not supported SQL type")
|
||||
// ErrNotSupportType not supported SQL type error
|
||||
ErrNotSupportType = errors.New("not supported SQL type")
|
||||
// ErrNoNotInConditions no NOT IN params error
|
||||
ErrNoNotInConditions = errors.New("No NOT IN conditions")
|
||||
ErrNoInConditions = errors.New("No IN conditions")
|
||||
// ErrNoInConditions no IN params error
|
||||
ErrNoInConditions = errors.New("No IN conditions")
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue