github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/libraries/go-xorm/builder/cond_like.go (about) 1 package builder 2 3 import "fmt" 4 5 type Like [2]string 6 7 var _ Cond = Like{"", ""} 8 9 func (like Like) WriteTo(w Writer) error { 10 if _, err := fmt.Fprintf(w, "%s LIKE ?", like[0]); err != nil { 11 return err 12 } 13 w.Append("%" + like[1] + "%") 14 return nil 15 } 16 17 func (like Like) And(conds ...Cond) Cond { 18 return And(like, And(conds...)) 19 } 20 21 func (like Like) Or(conds ...Cond) Cond { 22 return Or(like, Or(conds...)) 23 } 24 25 func (like Like) IsValid() bool { 26 return len(like[0]) > 0 && len(like[1]) > 0 27 }