diff --git a/dialect/gremlin/graph/dsl/__/dsl.go b/dialect/gremlin/graph/dsl/__/dsl.go index 9247c823e..4e9dfa93a 100644 --- a/dialect/gremlin/graph/dsl/__/dsl.go +++ b/dialect/gremlin/graph/dsl/__/dsl.go @@ -17,6 +17,9 @@ func Has(args ...interface{}) *dsl.Traversal { return New().Has(args...) } // Or is the api for calling __.Or(). func Or(args ...interface{}) *dsl.Traversal { return New().Or(args...) } +// And is the api for calling __.And(). +func And(args ...interface{}) *dsl.Traversal { return New().And(args...) } + // In is the api for calling __.In(). func In(args ...interface{}) *dsl.Traversal { return New().In(args...) } diff --git a/entc/gen/bindata.go b/entc/gen/bindata.go index d425d89f2..19eb5b3d5 100644 --- a/entc/gen/bindata.go +++ b/entc/gen/bindata.go @@ -1,4 +1,4 @@ -// Package gen Code generated by go-bindata. (@generated) DO NOT EDIT. +// Code generated by go-bindata. (@generated) DO NOT EDIT. // sources: // template/base.tmpl // template/builder/create.tmpl @@ -85,32 +85,21 @@ type bindataFileInfo struct { modTime time.Time } -// Name return file name func (fi bindataFileInfo) Name() string { return fi.name } - -// Size return file size func (fi bindataFileInfo) Size() int64 { return fi.size } - -// Mode return file mode func (fi bindataFileInfo) Mode() os.FileMode { return fi.mode } - -// Mode return file modify time func (fi bindataFileInfo) ModTime() time.Time { return fi.modTime } - -// IsDir return file whether a directory func (fi bindataFileInfo) IsDir() bool { - return fi.mode&os.ModeDir != 0 + return false } - -// Sys return file is sys mode func (fi bindataFileInfo) Sys() interface{} { return nil } @@ -130,7 +119,7 @@ func templateBaseTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/base.tmpl", size: 5021, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/base.tmpl", size: 5021, mode: os.FileMode(420), modTime: time.Unix(1564913315, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -150,7 +139,7 @@ func templateBuilderCreateTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/builder/create.tmpl", size: 2829, mode: os.FileMode(420), modTime: time.Unix(1565092032, 0)} + info := bindataFileInfo{name: "template/builder/create.tmpl", size: 2829, mode: os.FileMode(420), modTime: time.Unix(1565106398, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -170,12 +159,12 @@ func templateBuilderDeleteTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/builder/delete.tmpl", size: 2044, mode: os.FileMode(420), modTime: time.Unix(1565092490, 0)} + info := bindataFileInfo{name: "template/builder/delete.tmpl", size: 2044, mode: os.FileMode(420), modTime: time.Unix(1565106398, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _templateBuilderQueryTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xdc\x5a\x6d\x6f\xe3\x36\x12\xfe\x2c\xff\x8a\xa9\xe1\x06\x56\xe0\xc8\xbb\xfd\xe8\x43\x0e\x48\x9b\x76\x61\xa0\x68\xef\x76\x0b\x5c\x81\x20\x68\x19\x69\x64\xb3\x4b\x53\x2a\x49\x39\x09\x74\xfe\xef\x07\xbe\x48\xa2\x5e\x9c\xc8\xd9\x5c\xb7\xd8\x4f\x09\xad\xe1\x70\x38\x7c\xe6\xe1\x90\x9c\xb2\x84\x04\x53\xca\x11\xa6\x7f\x16\x28\x1e\xa7\x70\x38\x4c\xca\x12\x66\xf9\xc7\x0d\xac\x2e\xe1\x8e\x48\x84\x59\xf4\x5d\xc6\x53\xba\x89\xfe\x45\xe2\x8f\x64\x83\x5a\x46\x0b\x29\xdc\xe5\x8c\x28\x84\xe9\x16\x49\x82\x62\x0a\xb3\xfe\x27\xba\xcb\x33\xa1\xbc\x4f\xb3\xbb\x82\xb2\x04\x85\x56\x9f\x0b\xca\x15\xcc\x73\x22\x63\xc2\x60\x16\xfd\x44\x76\x18\xc2\xf4\xdf\x2d\x53\x04\xc6\x48\xf7\xb6\x43\xfd\x7f\xad\xc5\x09\xed\x0a\xa6\xa8\x54\x99\xd0\xf6\xad\x2e\x61\xa3\x60\xce\x90\xc3\x2c\xfa\x60\x7f\x0c\xe1\xad\xb1\x60\xb9\x04\xdf\x88\xc3\x01\xa8\x04\xb5\x45\xa8\x7e\x49\x33\x01\xc6\x17\x94\x6f\xb4\x68\xcb\x38\x2d\x8f\x5c\x51\x45\x51\x46\x13\xf5\x98\x63\x57\x9b\x54\xa2\x88\x15\x94\x93\x20\x36\x4e\x9b\x04\x8c\xee\xa8\x0a\x82\x73\xca\xd5\x24\xc8\xd2\x54\x62\xd3\x12\x09\x8a\x20\xb8\xb9\xfd\x59\xff\x33\x09\x0a\x4e\xff\x2c\x50\xff\x20\x95\xa0\x7c\x33\x09\x72\x81\x09\x8d\x89\x42\x09\xc1\xcd\x6d\xdd\x8a\xf4\xa8\x95\x45\x93\x60\xb9\x04\xca\x15\x8a\x1d\x26\x54\x7b\x5d\xdb\x6f\x2c\x0c\xca\xf2\x02\x04\xe1\x1b\x84\xd9\x6f\x0b\x98\x79\x1e\xaa\x3d\x63\x34\x04\x5a\xa1\xac\x7f\x00\xaf\x19\x7d\x6b\x67\xa7\xc5\xb4\x3a\xe4\x89\xee\x62\x7d\xf9\x9f\x2d\x0a\x04\x92\x24\x12\x08\x70\xbc\x87\xda\x44\xe3\x48\xcf\xb1\xd1\x24\x2d\x78\x0c\xf3\xd6\x92\x1e\x0e\x70\xde\x76\x60\x68\x55\xce\x73\x09\x51\x14\x0d\x4f\x38\xec\x76\xd2\xee\xf6\xf5\x1e\x0e\x91\xe7\xb8\x4b\x20\x79\x8e\x3c\xe9\x0e\xed\xc9\x2c\x20\x97\x51\x14\x85\x93\x40\xa0\x2a\x04\x87\x8e\xa8\x9b\xed\x8f\x7a\x29\xab\xd9\x9a\x75\x05\xa9\x30\x07\x95\x99\x99\x1a\xd8\x8c\x9e\xa7\x51\x36\xb7\x5a\x28\x57\xcf\x4e\x4a\x5b\x6c\xa5\x2f\xe1\xcc\xfc\xf3\x8c\xb5\x3f\x1b\xac\x39\x73\x39\x58\xe8\x7d\x82\xc1\x56\xdf\xdc\xe9\x19\x6b\xb2\x13\xbf\x84\x33\xfb\xdf\x73\x46\xeb\x48\x68\x6c\x36\xad\x4f\x30\x59\xf7\x9f\x67\x1a\x4a\xe6\xdf\x71\x16\x9b\x41\x8f\xa2\xc6\x7c\x5e\x40\xf6\x1c\x5e\xca\x72\x79\x0e\x6a\x4b\x25\xc4\x59\x82\xb0\x25\x12\x24\xdd\x51\x46\x04\x55\x8f\x70\x4f\xd5\x16\x30\xd9\xd4\xc1\x0a\x94\x43\xcc\x28\x72\x15\xa9\x5d\xce\xe0\x7c\x69\xa9\xcd\x8b\x5e\x17\xb7\xdf\x27\x1b\x94\x60\xc3\x11\x66\x5a\xc7\x6f\xc7\x39\x15\xa3\x5f\x1e\x73\xec\x33\xab\xe6\x0c\xd3\xf2\x28\x0e\x6b\x8e\x8b\xb7\x84\x72\xcb\x8b\x71\x21\x04\x72\x65\x1d\x0f\x19\x37\x3f\x9a\x81\x1b\x46\x4c\x36\x18\x4d\x82\x91\x6b\x72\x74\xd4\xb9\x5b\x9d\xd6\x8c\xec\x12\x05\x76\xf4\xd5\x25\x9c\x0d\x48\x94\x96\x6a\x57\xdd\x55\x88\xec\xef\x96\xde\x2e\x80\xa6\x9d\x7d\xc2\x10\x5f\x20\xef\xa9\x8a\xb7\xbd\xbe\x89\xd0\xff\x45\xd7\x94\x30\x8c\xd5\x3c\x34\x66\x8c\xe2\xd3\x0b\xab\x37\xd6\x7b\x67\x59\xc2\x1f\x19\xe5\x0d\x99\x3a\x7d\x12\xa6\x0b\xd0\x0b\xb1\xd2\xa2\x46\xad\x45\xc4\x83\xd2\xfc\x3a\x83\xe9\x7b\x67\xcb\xd4\x33\x6b\xaa\x97\x7e\xaa\x81\xe0\xc6\xb0\xbc\x6d\xf0\x52\x2d\x7d\x0a\xd3\xc4\x8e\xb1\xfc\x5a\x2e\x8d\xdf\x96\x39\x51\xdb\xa9\xcf\xef\x55\xdf\x0b\x78\xa8\xb7\x6a\xab\x26\xaa\x55\x97\xa5\xa1\x7a\xd7\x6c\xb7\x2a\x97\x22\x93\x95\xba\x17\x4f\xe1\x84\x19\xcc\x29\x4f\xf0\xc1\x73\xf5\x9b\x10\x6a\x2d\x4f\xcc\xa5\x65\x7c\xb5\x87\xd9\x96\x8b\x5f\x33\xca\x24\x30\x11\xe7\x36\x38\x43\x47\xef\x50\x81\x15\xd1\x94\xef\x6f\x42\x36\x0f\x78\x84\xbb\x47\xa0\x4a\x02\x4d\x46\x93\xd2\x3b\x54\xf3\x58\x3d\x40\x9c\x71\x85\x0f\x4a\x67\x57\xfa\xef\x02\x68\x62\x47\x58\x5f\x9b\xa0\x35\xc2\xf3\x73\x7f\xd0\x05\xa0\x10\x99\x30\x60\x1c\x66\x9e\xc8\x6e\x9f\xa6\x53\x93\xaf\x45\xeb\xeb\x39\x4d\xc2\x30\xfa\x99\xb3\x47\x3d\x78\xe8\xe8\xf6\x1d\xaa\x5f\x75\x06\xc4\xe8\x47\xd4\x8d\x05\xdc\x15\x0a\x72\xc2\x69\x2c\x75\xc0\x10\x6e\x47\x84\x2c\x8e\x0b\x21\x4f\x99\xe3\xaf\xe3\x27\xd9\x9a\x63\x45\xc9\xd1\xfb\x66\x00\x33\x6f\x0d\x90\xee\x6c\x9d\x2f\xb5\xda\x70\x12\xd0\xd4\xc8\x7d\x75\x09\x9c\x32\x13\xb0\x66\x26\x73\x14\x22\xd4\x8b\xeb\xfb\xcc\x57\xef\x9c\xf1\x03\x15\xb2\x59\x6e\xcd\x73\xa9\xf9\x65\x68\xd9\x29\xf7\xb6\x23\x78\xef\xfa\x9c\x7f\x2f\xc4\x4f\x99\xfa\x21\x2b\x78\x02\xf7\x5b\xe4\xc0\x33\xdd\x9d\x65\xf7\x3a\x69\xad\x95\xdc\x13\x09\xa9\x16\x1a\xed\x50\x63\xdb\x90\x47\x9f\x82\x88\x66\x59\x56\x08\x93\xbe\x8e\xf1\xa6\x4d\x49\xde\x86\xd1\x15\x63\x16\x25\x03\x2e\x75\x3e\xe4\x94\x19\x3d\xc6\xaf\x34\x05\x86\x7c\x7e\x64\xbc\x10\x2e\x2f\xe1\x4d\xaf\xf3\x99\xe7\xac\x12\xba\x88\xfd\x91\xdc\x21\x3b\x74\x56\x6d\x48\xfb\xcd\x9b\xdb\x85\x56\xe8\x2f\x62\x83\x69\xd3\x7c\x2d\x54\x5b\xdd\xc3\xab\xf0\x72\x0c\xd7\x4b\xdb\x73\xf7\xd9\x19\x7c\xb5\x96\x95\x8f\x0c\x8c\x5f\x88\xea\xf5\xf5\x73\xb8\xa6\xc9\x29\x98\xa6\xc9\x4b\x31\xbc\xbe\x3e\x82\xe2\x3e\x31\x58\x8f\x35\x70\xde\x13\x01\x34\x91\x70\x73\xdb\x11\x34\x7e\xa3\x89\xb4\x1d\x9e\xc0\xf5\xfa\x5a\x1a\x47\xff\x63\x18\xd4\x3e\x96\x69\x22\x3d\xdc\x5a\xbd\xe3\x10\xeb\x2b\x73\x4b\x43\x13\x39\x08\xd3\xf5\x75\x1b\xa8\xeb\xeb\xd7\x85\xea\x31\x67\x77\xfc\xa7\xa7\x48\x93\xa7\x01\x6a\x55\x7d\x22\x44\x69\x52\xa5\xf9\x9c\x3d\xb6\x10\x99\xe9\x1f\x9e\x23\xda\x45\xb3\x17\x57\x6e\xa1\x29\xf0\x4c\x01\x3e\x90\x58\x31\x9d\x9f\x62\xd5\x51\xe3\xd3\x8a\xe3\x78\x88\x56\xfb\xe3\xff\x9f\x65\xbf\x39\x9d\x65\x5d\xa6\xfa\x24\xd3\x96\x13\x9b\x78\xbe\x5d\x35\x4a\x9e\x23\x4e\xdb\xe3\xcd\xea\x45\xfc\x9c\x60\x4a\x0a\xa6\x8e\x74\xfe\x40\xf9\xa6\x60\x44\x3c\xc5\xef\x0d\x22\x1a\xda\xd6\xad\xd7\x0a\x05\xa3\xf9\xb5\x49\xbb\x49\xa4\x3e\x35\xeb\xd0\x9a\x3a\xf4\xdc\x0f\x86\x0e\x3b\x8f\x0b\x04\x47\xd2\x2f\x0a\x82\xcf\x47\xd3\xdf\x8c\xa3\x69\x2f\x18\x0c\x55\xb7\x80\x4f\x13\xb8\x74\xa4\xeb\xa3\xfb\x14\x16\xf7\x70\xdd\xea\x36\x06\xd1\x95\x9d\x1e\xb2\x3d\xa6\xb7\xee\x7d\x55\x74\xbf\x0e\xcf\x37\xeb\x7e\x02\xaa\x6b\x4a\xbf\x62\x0c\xf0\x01\xe3\x42\xa1\x6c\x90\x0a\x84\x27\xde\x09\x8a\x51\xa9\x20\x4b\x5b\x94\xe4\x30\x3e\x7a\xc6\x8e\x36\x07\xb0\x79\x73\xfb\x04\x49\x1f\xbb\x00\x38\xe5\xfc\x3f\xfa\x3a\xf5\x84\xc3\xff\x91\x73\x5c\xfb\x42\xb6\xd9\x2a\xfc\x3b\xd8\xc0\x47\x69\x77\xcb\xc8\x84\x8c\x7e\xc2\xfb\xf9\xb4\xba\xcf\x3f\x1c\x56\x50\x70\x59\xe4\x79\x26\x14\x26\xe0\x0e\xd9\x53\xad\xb4\xba\xdb\xad\xcf\xf3\xc7\xad\xea\x9d\xc1\x5b\xe6\xf5\x6e\x88\xaf\x18\x6b\x68\xfd\x8a\xb1\xd7\xc2\xbd\xd6\x3b\x0c\x83\x0e\x0a\x5e\xb2\x45\x3f\xb5\x33\x1f\x25\xf7\xa1\x11\x9c\x13\xd6\xd7\xf2\xa4\xd8\xf0\x89\x7f\xbc\x4b\x1c\x6d\x0e\x06\xc6\x10\x67\x7f\x19\xa1\x51\x6d\x16\x7f\xd3\xd0\x68\xcc\xeb\x85\xc6\xfa\x5a\x36\xa1\xb1\xbe\x96\xaf\x15\x1a\x5a\xef\xb1\xd0\x18\xdc\x11\xe4\xd1\x40\x68\xac\x1f\xbf\x1f\x48\x37\xbd\xef\xb2\x82\xb7\xaf\x53\x62\xf3\x4b\x96\x9a\xc6\x86\xee\x91\x9f\x78\x9f\x6f\x54\x1e\x4b\x4c\xb8\xfa\x82\x50\x5d\xcf\x74\x0c\xae\xdf\xfc\xe5\xa8\xf6\xcd\xeb\xe1\xda\x7c\x6c\x90\x6d\x9a\xaf\x85\x6d\xab\x7b\x18\x02\x94\xbb\x87\xd7\xc2\x41\x61\x08\xd1\xbe\xe5\x63\x31\x6d\x34\xba\xc9\x7d\xff\x40\xfd\x4b\x42\x51\xa0\x9e\x4e\xc3\xe9\x5b\x22\x01\x19\xee\x90\x2b\x59\xe5\xec\x1b\x41\xf2\xed\xe8\x29\x9a\x11\x8e\x80\xfc\x2e\xcb\xd8\x17\x84\xf2\x7a\xaa\x63\x50\x9e\x12\x26\xf1\x2f\x47\xba\x6f\x62\x0f\xe9\xe6\x63\x83\x74\xd3\x7c\x2d\xa4\x5b\xdd\xc3\x38\xd0\x30\xd0\x2b\x87\x76\xc0\x23\x50\xf7\x4d\x1f\x0b\x75\xa3\xb1\x8a\x63\xa6\x4f\x91\x4d\x82\x92\x14\x39\xb3\x6f\xfb\x99\x8f\x78\x67\xf4\x02\x28\x8f\x59\x91\x50\xbe\x01\xc2\x18\x10\x29\xb3\x98\x12\xbd\x1c\x52\x61\x2e\x23\x58\x2b\x88\x09\x87\x3b\xd4\xca\x0b\x89\x09\xa8\x0c\x72\x81\x39\x11\x7a\x6f\xd8\xed\x32\xde\x56\x29\x4d\x86\x54\x48\xd4\xa3\xed\x20\xa1\x69\x8a\x02\xb9\x3e\xdf\x92\x54\xa1\xad\x2f\x88\x8d\x95\x54\xc2\x8e\x24\x38\x9e\x47\x74\xaf\xf9\xe0\x7b\xb0\xf3\xc4\x59\xfb\x8b\x76\x59\xf5\xce\xd8\x7b\x32\xb6\x1f\x16\x93\xc0\x56\x7b\xac\x20\x18\x7e\xba\xd7\x12\xf6\x19\x7c\x40\x89\xfd\x60\x44\x44\x82\x42\x2b\x71\x4f\xd0\xae\x40\xa4\x3c\x2c\x7a\x6b\x6c\x44\xa3\x28\x0a\x75\x3f\x5b\x3f\xb2\x82\xa6\x9f\xad\x23\x19\xea\x68\x65\xab\x9e\x4d\x29\xc4\x0a\xea\xce\xc3\xd5\x17\x43\xca\x9a\xee\x95\xc2\xe5\xb2\x5a\x98\xe1\xc2\x94\xf1\x9c\xd3\x29\x4d\xe9\xbf\xf2\xb6\xbf\x47\x6e\x65\x17\x1d\x46\x71\x6f\xf2\x30\xdb\x88\xac\xc8\xbf\xf5\x1e\xcc\x5b\x05\x3e\xff\xad\xdf\x20\xbf\x96\xef\x8c\xa4\x7d\x2f\x37\x8f\x65\xb6\x5d\x43\xd7\x68\x82\x3d\x0a\x45\x63\x94\x70\x67\x6f\x5d\x32\x01\xbb\x4c\x20\xa4\x14\x59\x22\x97\x71\xc6\x8a\x1d\x97\x91\x49\xf8\x94\xc6\x69\x96\x2a\xe4\x56\x89\x79\x30\x25\x9b\x8d\xc0\x8d\x29\x99\x29\x78\xac\x68\xc6\xe5\xc2\xf0\xc9\xaa\xa6\xda\xf9\x47\x7c\x94\x8d\x60\x58\x31\x6d\x34\xa9\x9f\x5d\x6d\xb5\xd3\x0f\x66\x50\x5b\x15\x75\x01\xb3\x54\x4f\xb0\x62\x35\xf7\x4d\x93\xda\x64\xb9\xb4\xf4\x45\x76\x39\xc3\x95\x6d\x9a\x8b\x9b\x3d\x18\xd0\xd8\x1a\xa6\xe5\xd2\x78\xbf\xf2\x50\xda\x1c\xa9\x4a\xdd\xaa\x72\xc8\xdf\x6d\xf3\x83\xe9\xf6\x0b\xd1\x74\xfc\xbb\xe9\x6b\x33\x40\xbd\x2d\xff\xfe\x87\xcc\xf8\x6a\x6a\xb7\xe6\x6c\x47\x15\xee\x72\xf5\x38\x35\x62\xce\x9a\xc0\x55\x3f\x0c\xd4\x5c\x45\xa6\x66\x60\x1e\x46\x46\xab\x5b\x86\xde\x1b\xa7\xb5\xe2\xbb\x8c\x4b\x45\xb8\xd2\x51\x6e\xe5\xaf\x2a\xb7\xcd\x9b\xed\xc2\xa5\x01\xa1\x13\xf9\x10\x13\x6e\xdf\x11\xcf\xf6\xa1\x36\xc7\x43\xce\xd8\x17\x4f\x67\x95\x59\x76\xb0\x71\xb7\x70\x20\x80\x28\x8a\xec\x2f\x8e\x70\x5a\x18\xb4\xac\x63\xc1\x54\x55\x38\x74\x04\x9e\xaf\x70\x30\x1d\x22\x37\xdc\x25\x74\x09\xc0\x7c\x38\x54\xf6\xd8\xd2\x95\xbf\x6f\xee\x60\x27\xd3\x8e\xeb\x81\xfb\xc2\xb6\x80\xc3\x48\x37\x91\xe8\x6d\xff\xb5\xf2\xa1\xdd\x7e\x78\x94\x21\xc9\x7a\x38\x7f\x34\xb7\x75\x98\x21\x2c\xdf\x8c\x73\x4e\x59\x76\x6b\x27\xdc\xda\x4f\x1b\x90\x4d\x1d\xd4\xa7\x15\x86\x27\xe3\x6a\x27\xba\x85\x1f\x65\x39\x50\x28\xe1\x8c\x70\xf3\xf0\x8a\x20\x6a\x30\xbe\x1f\x2c\xc3\xec\xe0\x74\x64\x7d\xa5\xe9\x75\x71\xf7\x38\xb6\xbe\xb2\x1b\x2e\xfd\x22\x4b\x07\xfc\xa6\x70\x32\xe5\x12\x00\xe0\xe6\xb6\x8e\xfe\xcf\x59\x26\x59\x1b\x61\x2b\xdb\x9a\xe3\x6f\x45\xe9\x34\xe3\x0d\xfb\x57\xb5\x6e\xb5\x9b\x7a\x87\xe4\xf6\x8a\x54\x74\xd4\x71\x53\xd8\x0c\x3b\xd7\xee\x88\xa2\xe8\xaa\xd9\x41\x8e\xf1\xd0\x90\xfa\x48\x77\x6f\x15\xc4\x0d\x49\x2c\x20\xe5\xfd\x2a\xca\xae\xa4\xf3\x88\x66\x5c\xad\x90\x51\x77\x23\xd6\x9e\xac\x49\xfc\xa4\x96\xd1\xdf\x04\xca\x82\x99\x8d\x24\xf3\x7c\xb7\x27\xac\xc0\x17\x78\xa5\x22\xfb\x7e\x6d\xca\xde\xe2\x23\x25\x31\x96\x87\xd0\xa5\xed\x63\x4f\x59\x3d\x97\x7c\x8e\xa3\x56\xcf\x88\x36\x60\x9b\x7d\x6e\x3f\xe6\xc4\xd5\x3d\x6a\x75\xb5\xbf\xec\xd0\x35\x64\xe3\x10\xc3\xb6\x8d\xed\xc5\x94\xfe\xdc\x1c\xbd\x74\xeb\x84\x93\xd7\x09\x50\x39\x52\xc7\xd4\xc1\x4a\x59\x1f\xb1\xdc\x41\xac\x37\x4b\x7f\x3a\xbd\x87\xad\xf6\x61\xcc\xf2\xae\x07\x13\xe5\x08\x7e\x47\x15\xdd\x7b\xc5\x9f\xa9\x9f\xc0\x2a\x9d\xbc\xda\x3b\x68\x57\xe0\x69\x45\x0e\x87\xfa\x0c\x37\xf0\xfc\xa2\x13\x25\x48\x45\xb6\xab\x23\x30\xaa\xf2\x54\xae\xcf\x59\x8c\x65\xf7\xe8\x0a\x3f\xea\xba\xf8\x3a\x58\xcd\xae\xa5\xb3\x5e\x43\xc0\xad\x22\xd0\x91\x2e\xae\x6c\x7c\xf2\xe6\x5a\x75\xae\xac\xbd\x82\xa3\x01\x2a\x32\x7b\x41\x08\xff\x84\xb7\xb6\x68\x73\xcc\xed\xef\x80\x6d\x51\xed\x3e\x2a\xcd\xdb\x2a\x89\xb7\x14\xf7\xe4\x8e\xa1\x75\x87\x91\xd7\xee\x30\xf9\xbe\xda\x12\x0e\x6f\xad\x23\xaa\x18\xa8\x53\xea\x6a\x12\xd6\xf4\x71\x30\x39\x1b\xc0\x49\xbf\x2e\x20\xf0\xa2\x6b\xef\xde\xf3\x0f\x93\xd6\xf2\x37\x51\x52\xfd\xf2\x6c\xa4\xbc\x7c\x1d\x9f\xbc\x79\x56\x55\x3d\xef\x7e\xf1\xa4\x13\x7c\x50\x84\x8d\xcf\x7c\x47\xf8\x11\xd3\xf2\x41\xa7\x8a\xf3\x35\x52\xb0\x6e\x96\xf3\x6c\xe2\x65\x3a\x7c\x72\xe2\xe5\xfe\xfd\x5f\x00\x00\x00\xff\xff\x6d\x11\x6c\x46\xa5\x33\x00\x00") +var _templateBuilderQueryTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xdc\x5a\x6d\x6f\xe3\x36\x12\xfe\x2c\xff\x8a\xa9\xe1\x06\x56\xe0\xc8\xbb\xfd\xe8\x43\x0e\x48\x9b\x76\x61\xa0\x68\xef\x76\x0b\x5c\x81\x20\x68\x19\x69\x64\xb3\x4b\x53\x2a\x49\x39\x09\x74\xfe\xef\x07\xbe\x48\xa2\x5e\x9c\xc8\xd9\x5c\xb7\xd8\x4f\x36\xa5\xe1\x70\x38\x7c\xe6\xe1\x50\x9c\xb2\x84\x04\x53\xca\x11\xa6\x7f\x16\x28\x1e\xa7\x70\x38\x4c\xca\x12\x66\xf9\xc7\x0d\xac\x2e\xe1\x8e\x48\x84\x59\xf4\x5d\xc6\x53\xba\x89\xfe\x45\xe2\x8f\x64\x83\x5a\x46\x0b\x29\xdc\xe5\x8c\x28\x84\xe9\x16\x49\x82\x62\x0a\xb3\xfe\x2b\xba\xcb\x33\xa1\xbc\x57\xb3\xbb\x82\xb2\x04\x85\x56\x9f\x0b\xca\x15\xcc\x73\x22\x63\xc2\x60\x16\xfd\x44\x76\x18\xc2\xf4\xdf\x2d\x53\x04\xc6\x48\xf7\xb6\x43\xfd\xbf\xd6\xe2\x84\x76\x05\x53\x54\xaa\x4c\x68\xfb\x56\x97\xb0\x51\x30\x67\xc8\x61\x16\x7d\xb0\x0f\x43\x78\x6b\x2c\x58\x2e\xc1\x37\xe2\x70\x00\x2a\x41\x6d\x11\xaa\x27\x69\x26\xc0\xf8\x82\xf2\x8d\x16\x6d\x19\xa7\xe5\x91\x2b\xaa\x28\xca\x68\xa2\x1e\x73\xec\x6a\x93\x4a\x14\xb1\x82\x72\x12\xc4\xc6\x69\x93\x80\xd1\x1d\x55\x41\x70\x4e\xb9\x9a\x04\x59\x9a\x4a\x6c\x5a\x22\x41\x11\x04\x37\xb7\x3f\xeb\x3f\x93\xa0\xe0\xf4\xcf\x02\xf5\x03\xa9\x04\xe5\x9b\x49\x90\x0b\x4c\x68\x4c\x14\x4a\x08\x6e\x6e\xeb\x56\xa4\x47\xad\x2c\x9a\x04\xcb\x25\x50\xae\x50\xec\x30\xa1\xda\xeb\xda\x7e\x63\x61\x50\x96\x17\x20\x08\xdf\x20\xcc\x7e\x5b\xc0\xcc\xf3\x50\xed\x19\xa3\x21\xd0\x0a\x65\xfd\x00\xbc\x66\xf4\xad\x9d\x9d\x16\xd3\xea\x90\x27\xba\x8b\xf5\xe5\x7f\xb6\x28\x10\x48\x92\x48\x20\xc0\xf1\x1e\x6a\x13\x8d\x23\x3d\xc7\x46\x93\xb4\xe0\x31\xcc\x5b\x4b\x7a\x38\xc0\x79\xdb\x81\xa1\x55\x39\xcf\x25\x44\x51\x34\x3c\xe1\xb0\xdb\x49\xbb\xdb\xd7\x7b\x38\x44\x9e\xe3\x2e\x81\xe4\x39\xf2\xa4\x3b\xb4\x27\xb3\x80\x5c\x46\x51\x14\x4e\x02\x81\xaa\x10\x1c\x3a\xa2\x6e\xb6\x3f\xea\xa5\xac\x66\x6b\xd6\x15\xa4\xc2\x1c\x54\x66\x66\x6a\x60\x33\x7a\x9e\x46\xd9\xdc\x6a\xa1\x5c\x3d\x3b\x29\x6d\xb1\x95\xbe\x84\x33\xf3\xe7\x19\x6b\x7f\x36\x58\x73\xe6\x72\xb0\xd0\xfb\x04\x83\xad\xbe\xb9\xd3\x33\xd6\x64\x27\x7e\x09\x67\xf6\xdf\x73\x46\xeb\x48\x68\x6c\x36\xad\x4f\x30\x59\xf7\x9f\x67\x1a\x4a\xe6\xef\x38\x8b\xcd\xa0\x47\x51\x63\x5e\x2f\x20\x7b\x0e\x2f\x65\xb9\x3c\x07\xb5\xa5\x12\xe2\x2c\x41\xd8\x12\x09\x92\xee\x28\x23\x82\xaa\x47\xb8\xa7\x6a\x0b\x98\x6c\xea\x60\x05\xca\x21\x66\x14\xb9\x8a\xd4\x2e\x67\x70\xbe\xb4\xd4\xe6\x45\xaf\x8b\xdb\xef\x93\x0d\x4a\xb0\xe1\x08\x33\xad\xe3\xb7\xe3\x9c\x8a\xd1\x2f\x8f\x39\xf6\x99\x55\x73\x86\x69\x79\x14\x87\x35\xc7\xc5\x5b\x42\xb9\xe5\xc5\xb8\x10\x02\xb9\xb2\x8e\x87\x8c\x9b\x87\x66\xe0\x86\x11\x93\x0d\x46\x93\x60\xe4\x9a\x1c\x1d\x75\xee\x56\xa7\x35\x23\xbb\x44\x81\x1d\x7d\x75\x09\x67\x03\x12\xa5\xa5\xda\x55\x77\x15\x22\xfb\xdc\xd2\xdb\x05\xd0\xb4\xb3\x4f\x18\xe2\x0b\xe4\x3d\x55\xf1\xb6\xd7\x37\x11\xfa\x5f\x74\x4d\x09\xc3\x58\xcd\x43\x63\xc6\x28\x3e\xbd\xb0\x7a\x63\xbd\x77\x96\x25\xfc\x91\x51\xde\x90\xa9\xd3\x27\x61\xba\x00\xbd\x10\x2b\x2d\x6a\xd4\x5a\x44\x3c\x28\xcd\xaf\x33\x98\xbe\x77\xb6\x4c\x3d\xb3\xa6\x7a\xe9\xa7\x1a\x08\x6e\x0c\xcb\xdb\x06\x2f\xd5\xd2\xa7\x30\x4d\xec\x18\xcb\xaf\xe5\xd2\xf8\x6d\x99\x13\xb5\x9d\xfa\xfc\x5e\xf5\xbd\x80\x87\x7a\xab\xb6\x6a\xa2\x5a\x75\x59\x1a\xaa\x77\xcd\x76\xab\x72\x29\x32\x59\xa9\x7b\xf1\x14\x4e\x98\xc1\x9c\xf2\x04\x1f\x3c\x57\xbf\x09\xa1\xd6\xf2\xc4\x5c\x5a\xc6\x7b\x7b\x58\x50\x85\xaf\x19\x64\x12\x98\x80\x73\xef\x0c\x1b\xbd\x43\x05\x56\x44\x33\xbe\xbf\x07\xd9\x34\xe0\x11\xee\x1e\x81\x2a\x09\x34\x19\xcd\x49\xef\x50\xcd\x63\xf5\x00\x71\xc6\x15\x3e\x28\x9d\x5c\xe9\xdf\x05\xd0\xc4\x8e\xb0\xbe\x36\x31\x6b\x84\xe7\xe7\xfe\xa0\x0b\x40\x21\x32\x61\xb0\x38\x4c\x3c\x91\xdd\x3d\x4d\xa7\x26\x5d\x8b\xd6\xd7\x73\x9a\x84\x61\xf4\x33\x67\x8f\x7a\xf0\xd0\xb1\xed\x3b\x54\xbf\xea\x04\x88\xd1\x8f\xa8\x1b\x0b\xb8\x2b\x14\xe4\x84\xd3\x58\xea\x78\x21\xdc\x8e\x08\x59\x1c\x17\x42\x9e\x32\xc7\x5f\xc7\x4f\xb2\x35\xc7\x8a\x91\xa3\xf7\xcd\x00\x66\xde\x1a\x1f\xdd\xd9\x3a\x5f\x6a\xb5\xe1\x24\xa0\xa9\x91\xfb\xea\x12\x38\x65\x26\x5e\xcd\x4c\xe6\x28\x44\xa8\x17\xd7\xf7\x99\xaf\xde\x39\xe3\x07\x2a\x64\xb3\xdc\x9a\xe6\x52\xf3\x64\x68\xd9\x29\xf7\x76\x23\x78\xef\xfa\x9c\x7f\x2f\xc4\x4f\x99\xfa\x21\x2b\x78\x02\xf7\x5b\xe4\xc0\x33\xdd\x9d\x65\xf7\x3a\x67\xad\x95\xdc\x13\x09\xa9\x16\x1a\xed\x50\x63\xdb\x90\x47\x9f\x82\x88\x26\x59\x56\x08\x93\xbd\x8e\xf1\xa6\xcd\x48\xde\x86\xd1\x15\x63\x16\x25\x03\x2e\x75\x3e\xe4\x94\x19\x3d\xc6\xaf\x34\x05\x86\x7c\x7e\x64\xbc\x10\x2e\x2f\xe1\x4d\xaf\xf3\x99\xe7\xac\x12\xba\x88\xfd\x91\xdc\x21\x3b\x74\x56\x6d\x48\xfb\xcd\x9b\xdb\x85\x56\xe8\x2f\x62\x83\x69\xd3\x7c\x2d\x54\x5b\xdd\xc3\xab\xf0\x72\x0c\xd7\x4b\xdb\x73\xf7\xd9\x19\x7c\xb5\x96\x95\x8f\x0c\x8c\x5f\x88\xea\xf5\xf5\x73\xb8\xa6\xc9\x29\x98\xa6\xc9\x4b\x31\xbc\xbe\x3e\x82\xe2\x3e\x31\x58\x8f\x35\x70\xde\x13\x01\x34\x91\x70\x73\xdb\x11\x34\x7e\xa3\x89\xb4\x1d\x9e\xc0\xf5\xfa\x5a\x1a\x47\xff\x63\x18\xd4\x3e\x96\x69\x22\x3d\xdc\x5a\xbd\xe3\x10\xeb\x2b\x73\x4b\x43\x13\x39\x08\xd3\xf5\x75\x1b\xa8\xeb\xeb\xd7\x85\xea\x31\x67\x77\xfc\xa7\xa7\x48\x93\xa7\x01\x6a\x55\x7d\x22\x44\x69\x52\x65\xf9\x9c\x3d\xb6\x10\x99\xe9\x07\xcf\x11\xed\xa2\xd9\x8b\x2b\xb7\xd0\x14\x78\xa6\x00\x1f\x48\xac\x98\x4e\x4f\xb1\xea\xa8\xf1\x69\xc5\x71\x3c\x44\xab\xfd\xf1\xff\xcf\xb2\xdf\x9c\xce\xb2\x2e\x51\x7d\x92\x69\xcb\x89\xcd\x3b\xdf\xae\x1a\x25\xcf\x11\xa7\xed\xf1\x66\xf5\x22\x7e\x4e\x30\x25\x05\x53\x47\x3a\x7f\xa0\x7c\x53\x30\x22\x9e\xe2\xf7\x06\x11\x0d\x6d\xeb\xd6\x6b\x85\x82\xd1\xfc\xda\xa4\xdd\x24\x52\x9f\x9a\x75\x68\x4d\x1d\x7a\xee\x07\x43\x87\x9d\xc7\x05\x82\x23\xe9\x17\x05\xc1\xe7\xa3\xe9\x6f\xc6\xd1\xb4\x17\x0c\x86\xaa\x5b\xc0\xa7\x09\x5c\x3a\xd2\xf5\xd1\x7d\x0a\x8b\x7b\xb8\x6e\x75\x1b\x83\xe8\xca\x4e\x0f\xd9\x1e\xd3\x5b\xf7\xbe\x2a\xba\x5f\x87\xe7\x9b\x75\x3f\x01\xd5\x35\xa5\x5f\x31\x06\xf8\x80\x71\xa1\x50\x36\x48\x05\xc2\x13\xef\x04\xc5\xa8\x54\x90\xa5\x2d\x4a\x72\x18\x1f\x3d\x63\x47\x9b\x03\xd8\xbc\xb9\x7d\x82\xa4\x8f\x9d\xff\x4f\x39\xfe\x8f\xfe\x9a\x7a\xc2\xd9\xff\xc8\x39\xae\xfd\x3d\xb6\xd9\x2a\xda\xc7\x57\x0f\xa5\xdd\x2d\x23\x13\x32\xfa\x09\xef\xe7\xd3\xea\x73\xfe\xe1\xb0\x82\x82\xcb\x22\xcf\x33\xa1\x30\x01\x77\xc6\x9e\x6a\xa5\xd5\xa7\xdd\xfa\x38\x7f\xdc\xaa\xde\x11\xbc\x65\x5e\xef\x03\xf1\x15\x63\x0d\xad\x5f\x31\xf6\x5a\xb8\xd7\x7a\x87\x61\xd0\x41\xc1\x4b\xb6\xe8\xa7\x76\xe6\xa3\xe4\x3e\x34\x82\x73\xc2\xfa\x5a\x9e\x14\x1b\x3e\xf1\x8f\x77\x89\xa3\xcd\xc1\xc0\x18\xe2\xec\x2f\x23\x34\xaa\xcd\xe2\x6f\x1a\x1a\x8d\x79\xbd\xd0\x58\x5f\xcb\x26\x34\xd6\xd7\xf2\xb5\x42\x43\xeb\x3d\x16\x1a\x83\x3b\x82\x3c\x1a\x08\x8d\xf5\xe3\xf7\x03\xe9\xa6\xf7\x5d\x56\xf0\xf6\xe7\x94\xd8\x3c\xc9\x52\xd3\xd8\xd0\x3d\xf2\x13\x3f\xe7\x1b\x95\xc7\x12\x13\xae\xbe\x20\x54\xd7\x33\x1d\x83\xeb\x37\x7f\x39\xaa\x7d\xf3\x7a\xb8\x36\x2f\x1b\x64\x9b\xe6\x6b\x61\xdb\xea\x1e\x86\x00\xe5\xee\xde\xb5\x70\x50\x18\x42\xb4\x6f\xf9\x58\x4c\x1b\x8d\x6e\x72\xdf\x3f\x50\xff\x23\xa1\x28\x50\x4f\xa7\xe1\xf4\x2d\x91\x80\x0c\x77\xc8\x95\xac\x72\xf6\x8d\x20\xf9\x76\xf4\x14\xcd\x08\x47\x40\x7e\x97\x65\xec\x0b\x42\x79\x3d\xd5\x31\x28\x4f\x09\x93\xf8\x97\x23\xdd\x37\xb1\x87\x74\xf3\xb2\x41\xba\x69\xbe\x16\xd2\xad\xee\x61\x1c\x68\x18\xe8\x95\x43\x3b\xe0\x11\xa8\xfb\xa6\x8f\x85\xba\xd1\x58\xc5\x31\xd3\xa7\xc8\x26\x41\x49\x8a\x9c\xd9\xab\xfd\xcc\x47\xbc\x33\x7a\x01\x94\xc7\xac\x48\x28\xdf\x00\x61\x0c\x88\x94\x59\x4c\x89\x5e\x0e\xa9\x30\x97\x11\xac\x15\xc4\x84\xc3\x1d\x6a\xe5\x85\xc4\x04\x54\x06\xb9\xc0\x9c\x08\xbd\x37\xec\x76\x19\x6f\xab\x94\x26\x43\x2a\x24\xea\xd1\x76\x90\xd0\x34\x45\x81\x5c\x9f\x6f\x49\xaa\xd0\x96\x17\xc4\xc6\x4a\x2a\x61\x47\x12\x1c\xcf\x23\xba\xd7\x7c\xf0\x3a\xd8\x79\xe2\xac\xfd\x46\xbb\xac\xba\x66\xec\xdd\x18\xdb\x17\x8b\x49\x60\x8b\x3d\x56\x10\x0c\xdf\xdc\x6b\x09\x7b\x0b\x3e\xa0\xc4\xbe\x30\x22\x22\x41\xa1\x95\xb8\x1b\x68\x57\x1f\x52\x1e\x16\xbd\x35\x36\xa2\x51\x14\x85\xba\x9f\x2d\x1f\x59\x41\xd3\xcf\x96\x91\x0c\x75\xb4\xb2\x55\xcf\xa6\x12\x62\x05\x75\xe7\xe1\xe2\x8b\x21\x65\x4d\xf7\x4a\xe1\x72\x59\x2d\xcc\x70\x5d\xca\x78\xce\xe9\x54\xa6\xf4\x2f\x79\xdb\xef\x23\xb7\xb2\x8b\x0e\xa3\xb8\x2b\x79\x98\x6d\x44\x56\xe4\xdf\x7a\xf7\xe5\xad\xfa\x9e\xff\xd6\x57\x90\x5f\xcb\x77\x46\xd2\x5e\x97\x9b\xcb\x32\xdb\xae\xa1\x6b\x34\xc1\x1e\x85\xa2\x31\x4a\xb8\xb3\x5f\x5d\x32\x01\xbb\x4c\x20\xa4\x14\x59\x22\x97\x71\xc6\x8a\x1d\x97\x91\x49\xf8\x94\xc6\x69\x96\x2a\xe4\x56\x89\xb9\x2f\x25\x9b\x8d\xc0\x8d\xa9\x98\x29\x78\xac\x68\xc6\xe5\xc2\xf0\xc9\xaa\xa6\xda\xf9\x47\x7c\x94\x8d\x60\x58\x31\x6d\x34\xa9\x6f\x5d\x6d\xb1\xd3\x0f\x66\x50\x5b\x14\x75\x01\xb3\x54\x4f\xb0\x62\x35\xf7\x4e\x93\xda\x64\xb9\xb4\xf4\x45\x76\x39\xc3\x95\x6d\x9a\x0f\x37\x7b\x30\xa0\xb1\x25\x4c\xcb\xa5\xf1\x7e\xe5\xa1\xb4\x39\x52\x95\xba\x55\xe5\x90\xbf\xdb\xe6\x07\xd3\xed\x17\xa2\xe9\xf8\x77\xd3\xd7\x66\x80\x7a\x5b\xfe\xfd\x0f\x99\xf1\xd5\xd4\x6e\xcd\xd9\x8e\x2a\xdc\xe5\xea\x71\x6a\xc4\x9c\x35\x81\x2b\x7e\x18\x28\xb9\x8a\x4c\xc9\xc0\x3c\x8c\x8c\x56\xb7\x0c\xbd\x3b\x4e\x6b\xc5\x77\x19\x97\x8a\x70\xa5\xa3\xdc\xca\x5f\x55\x6e\x9b\x37\xdb\x85\x4b\x03\x42\x27\xf2\x21\x26\xdc\xde\x23\x9e\xed\x43\x6d\x8e\x87\x9c\xb1\x37\x9e\xce\x2a\xb3\xec\x60\xe3\x6e\xe1\x40\x00\x51\x14\xd9\x27\x8e\x70\x5a\x18\xb4\xac\x63\xc1\x54\x15\x38\x74\x04\x9e\x2f\x70\x30\x1d\x22\x37\xdc\x25\x74\x09\xc0\xbc\x38\x54\xf6\xd8\xca\x95\xbf\x6f\xee\x60\x27\xd3\x8e\xeb\x81\xef\x85\x6d\x01\x87\x91\x6e\x22\xd1\xdb\xfe\x6b\xe5\x43\xbb\xfd\xf0\x28\x43\x92\xf5\x70\xfe\x68\x6e\xeb\x30\x43\x58\xbe\x19\xe7\x9c\xb2\xec\x96\x4e\xb8\xb5\x9f\x36\x20\x9b\x3a\xa8\x4f\x2b\x0c\x4f\xc6\x95\x4e\x74\xeb\x3e\xca\x72\xa0\x4e\xc2\x19\xe1\xe6\xe1\x15\x41\xd4\x60\x7c\x3f\x58\x85\xd9\xc1\xe9\xc8\xf2\x4a\xd3\xeb\xe2\xee\x71\x6c\x79\x65\x37\x5c\xfa\x35\x96\x0e\xf8\x4d\xdd\x64\xca\x25\x00\xc0\xcd\x6d\x1d\xfd\x9f\xb3\x4a\xb2\x36\xc2\x16\xb6\x35\xc7\xdf\x8a\xd2\x69\xc6\x1b\xf6\xaf\x4a\xdd\x6a\x37\xf5\x0e\xc9\xed\x15\xa9\xe8\xa8\xe3\xa6\xb0\x19\x76\xae\xdd\x11\x45\xd1\x55\xb3\x83\x1c\xe3\xa1\x21\xf5\x91\xee\xde\xaa\x87\x1b\x92\x58\x40\xca\xfb\x45\x94\x5d\x49\xe7\x11\xcd\xb8\x5a\x21\xa3\xee\x8b\x58\x7b\xb2\x26\xf1\x93\x5a\x46\xbf\x13\x28\x0b\x66\x36\x92\xcc\xf3\xdd\x9e\xb0\x02\x5f\xe0\x95\x8a\xec\xfb\xb5\x29\x7b\x8b\x8f\x94\xc4\x58\x1e\x42\x97\xb6\x8f\x3d\x65\xf5\x5c\xf2\x39\x8e\x5a\x3d\x23\xda\x80\x6d\xf6\xb9\xfd\x98\x13\x57\xf7\xa8\xd5\xd5\xfe\xb2\x43\xd7\x90\x8d\x43\x0c\xdb\x36\xb6\x17\x53\xfa\x75\x73\xf4\xd2\xad\x13\x4e\x5e\x27\x40\xe5\x48\x1d\x53\x07\x2b\x65\x7d\xc4\x72\x07\xb1\xde\x2c\xfd\xe9\xf4\x2e\xb6\xda\x87\x31\xcb\xbb\x1e\x4c\x94\x23\xf8\x1d\x55\x74\xef\xd5\x7e\xa6\x7e\x02\xab\x74\xf2\x6a\xbf\x41\xbb\xfa\x4e\x2b\x72\x38\xd4\x67\xb8\x81\xeb\x17\x9d\x28\x41\x2a\xb2\x5d\x1d\x81\x51\x95\xa7\x72\x7d\xce\x62\x2c\xbb\x47\x57\xf8\x51\x97\xc5\xd7\xc1\x6a\x76\x2d\x9d\xf5\x1a\x02\x6e\xd5\x80\x8e\x74\x71\x65\xe3\x93\x5f\xae\x55\xe7\x93\xb5\x57\x70\x34\x40\x45\x66\x2f\x08\xe1\x9f\xf0\xd6\xd6\x6c\x8e\xf9\xfa\x3b\x60\x5b\x54\xbb\x8f\x4a\x73\xb7\x4a\xe2\x2d\xc5\x3d\xb9\x63\x68\xdd\x61\xe4\xb5\x3b\x4c\xbe\xaf\xb6\x84\xc3\x5b\xeb\x88\x2a\x06\xea\x94\xba\x9a\x84\x35\x7d\x1c\x4c\xce\x06\x70\xd2\xaf\x0b\x08\xbc\xe8\xda\xbb\xfb\xfc\xc3\xa4\xb5\xfc\x4d\x94\x54\x4f\x9e\x8d\x94\x97\xaf\xe3\x93\x5f\x9e\x55\x55\xce\xbb\x5f\x3c\xe9\x04\x1f\x14\x61\xe3\x33\xdf\x11\x7e\xc4\xb4\x7c\xd0\xa9\xe2\x7c\x8d\x14\xac\x9b\xe5\x3c\x9b\x78\x99\x0e\x9f\x9c\x78\xb9\xbf\xff\x0b\x00\x00\xff\xff\x24\xe4\xb8\x74\xa4\x33\x00\x00") func templateBuilderQueryTmplBytes() ([]byte, error) { return bindataRead( @@ -190,7 +179,7 @@ func templateBuilderQueryTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/builder/query.tmpl", size: 13221, mode: os.FileMode(420), modTime: time.Unix(1565098035, 0)} + info := bindataFileInfo{name: "template/builder/query.tmpl", size: 13220, mode: os.FileMode(420), modTime: time.Unix(1565107106, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -210,7 +199,7 @@ func templateBuilderSetterTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/builder/setter.tmpl", size: 3040, mode: os.FileMode(420), modTime: time.Unix(1564726295, 0)} + info := bindataFileInfo{name: "template/builder/setter.tmpl", size: 3040, mode: os.FileMode(420), modTime: time.Unix(1564668403, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -230,7 +219,7 @@ func templateBuilderUpdateTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/builder/update.tmpl", size: 7364, mode: os.FileMode(420), modTime: time.Unix(1565093357, 0)} + info := bindataFileInfo{name: "template/builder/update.tmpl", size: 7364, mode: os.FileMode(420), modTime: time.Unix(1565106398, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -250,7 +239,7 @@ func templateClientTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/client.tmpl", size: 3955, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/client.tmpl", size: 3955, mode: os.FileMode(420), modTime: time.Unix(1565093501, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -270,7 +259,7 @@ func templateConfigTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/config.tmpl", size: 1077, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/config.tmpl", size: 1077, mode: os.FileMode(420), modTime: time.Unix(1564913322, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -290,7 +279,7 @@ func templateContextTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/context.tmpl", size: 523, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/context.tmpl", size: 523, mode: os.FileMode(420), modTime: time.Unix(1564913326, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -310,7 +299,7 @@ func templateDialectGremlinByTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/gremlin/by.tmpl", size: 1679, mode: os.FileMode(420), modTime: time.Unix(1564494654, 0)} + info := bindataFileInfo{name: "template/dialect/gremlin/by.tmpl", size: 1679, mode: os.FileMode(420), modTime: time.Unix(1564480239, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -330,7 +319,7 @@ func templateDialectGremlinCreateTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/gremlin/create.tmpl", size: 2567, mode: os.FileMode(420), modTime: time.Unix(1560858191, 0)} + info := bindataFileInfo{name: "template/dialect/gremlin/create.tmpl", size: 2567, mode: os.FileMode(420), modTime: time.Unix(1558503319, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -350,7 +339,7 @@ func templateDialectGremlinDecodeTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/gremlin/decode.tmpl", size: 1924, mode: os.FileMode(420), modTime: time.Unix(1564494654, 0)} + info := bindataFileInfo{name: "template/dialect/gremlin/decode.tmpl", size: 1924, mode: os.FileMode(420), modTime: time.Unix(1564480239, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -370,7 +359,7 @@ func templateDialectGremlinDeleteTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/gremlin/delete.tmpl", size: 541, mode: os.FileMode(420), modTime: time.Unix(1564440681, 0)} + info := bindataFileInfo{name: "template/dialect/gremlin/delete.tmpl", size: 541, mode: os.FileMode(420), modTime: time.Unix(1563979564, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -390,7 +379,7 @@ func templateDialectGremlinErrorsTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/gremlin/errors.tmpl", size: 1608, mode: os.FileMode(420), modTime: time.Unix(1564494654, 0)} + info := bindataFileInfo{name: "template/dialect/gremlin/errors.tmpl", size: 1608, mode: os.FileMode(420), modTime: time.Unix(1564480239, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -410,7 +399,7 @@ func templateDialectGremlinGroupTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/gremlin/group.tmpl", size: 1151, mode: os.FileMode(420), modTime: time.Unix(1560858192, 0)} + info := bindataFileInfo{name: "template/dialect/gremlin/group.tmpl", size: 1151, mode: os.FileMode(420), modTime: time.Unix(1558503319, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -430,12 +419,12 @@ func templateDialectGremlinMetaTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/gremlin/meta.tmpl", size: 508, mode: os.FileMode(420), modTime: time.Unix(1564494654, 0)} + info := bindataFileInfo{name: "template/dialect/gremlin/meta.tmpl", size: 508, mode: os.FileMode(420), modTime: time.Unix(1564480239, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _templateDialectGremlinPredicateTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xc4\x56\xdf\x6b\xdb\x30\x10\x7e\x76\xfe\x8a\x23\x14\x66\x07\x57\xde\xf3\x20\x0f\xfb\xd1\x6d\x81\xd1\xb2\x75\x74\x0f\xa5\x04\xd5\x3a\x27\xa2\xae\x64\x24\xd9\x7d\x30\xfa\xdf\xc7\x59\x4e\x9c\x5f\x5d\x43\xc3\xb6\xa7\x98\xdc\xa7\xbb\xef\xbe\xfb\x0e\xa9\x6d\x41\x60\x21\x15\xc2\x58\x48\x5e\x62\xee\xb2\x85\xc1\xc7\x52\xaa\xac\x32\x28\x64\xce\x1d\x66\x52\x8c\xe1\xdc\xfb\x51\x54\xd4\x2a\x8f\x1d\x4c\x84\x2d\xd9\x4f\xc3\x1b\x34\x96\x97\x09\xb4\xa3\x28\x72\xec\x2b\xb7\xb3\x4f\xb1\x14\xc9\x28\xf2\xa3\xb6\x3d\x07\x54\x02\xbc\x1f\x8d\x8e\xac\x91\xe9\xca\x86\x3a\x74\xf8\x4c\x57\xf0\x6e\x0a\x67\xec\x3a\xd7\x15\xb2\xab\x6a\x88\x70\xb3\xd8\x0c\xbd\x37\x8b\x17\xd9\xd1\x39\x59\x50\x52\x76\xc3\x8d\xe4\x42\xe6\x44\x2d\x8a\xa2\x86\x52\x3d\xf2\x07\x8c\x6f\xef\xa4\x72\x68\x0a\x9e\x63\xeb\x53\x28\x51\xc5\x6d\x1b\xaa\x79\x9f\x24\x04\x2e\xb4\x01\x49\x07\x0c\x57\x0b\x84\xa6\xcb\x1d\x45\xcd\xad\xbc\x83\x29\x0c\xe8\x5b\x79\x47\x01\xdf\x57\xee\x85\x18\x44\xaa\x18\x61\x75\xc5\xbe\x04\x1d\xc0\x7b\xaa\xb5\xcf\xb0\x61\x8c\xa0\x58\x5a\x04\xef\x87\x02\xf4\x5f\x97\x34\x79\x9d\xda\x85\xc4\x72\x35\xd4\x4e\xd3\x62\x53\xd1\xcf\x14\x3d\x6e\xe2\xf1\x37\x7e\x8f\x65\xda\xf5\x5e\xb0\x8f\x5a\x59\xc7\x95\x03\xef\x53\xa8\xd8\xc5\xf7\xb8\x39\x85\xe0\xe0\x88\x3f\x93\x7c\xde\x2f\xa7\xf1\xdf\x1f\x52\x73\x70\x4a\xfd\x90\x4e\x19\x08\x8a\x05\x66\x4b\xbe\xd5\x2e\x6e\x36\x74\x21\x16\xb8\x11\x2b\x89\x76\x17\xc7\x81\xf5\x10\x16\xd2\x60\xee\xa4\x56\x04\x19\x5f\xd5\x6e\x23\x2f\xf1\x47\x36\xb3\x33\x45\x6a\xf4\x49\x77\x8f\x4d\x61\x3c\x53\xe3\x75\x2c\x9b\x00\x6f\xb4\x14\x90\x4b\x93\xd7\x25\x37\x20\xb0\x42\x25\x30\x97\x68\x61\x92\x0d\x29\x02\xb1\x8e\x57\x5f\x60\x9f\x1e\x29\x73\xcc\xc6\x66\x13\x22\x2b\xdd\x1b\x0b\x5c\x01\x49\x04\x4f\xd2\x2d\xc1\x62\x59\x9c\x1b\x2c\xd0\xa0\xca\x31\x05\xc7\x1f\x10\xdc\x12\xc1\x3d\x69\x68\xd0\x38\x99\x6f\xb3\x0a\x2d\x5f\x63\x59\xfc\xc0\xa2\x5f\x7c\xc7\x3e\x68\xb7\xec\x56\x3c\x70\xf6\x3e\x59\xed\x6b\x58\xb7\x80\x22\xc0\xa0\x8b\xf7\x17\xdb\x47\xf6\xe2\x37\x71\xb2\xb3\xf6\x27\xd8\x81\xda\xfd\x07\x96\x38\x93\x61\x54\xf3\x6d\xd0\xda\x01\xaf\xb5\xcd\xc1\xcc\x5b\xd5\xff\x9b\xb7\x76\x2d\xd1\xf1\x20\x63\x19\x2c\xe0\x11\xb9\xb2\x20\x1d\xd8\xa5\xae\x4b\x01\xf7\x08\xce\xd4\x08\x52\x81\x56\x08\xba\xe8\xdc\xb6\x6e\x69\xcd\x32\x92\x2a\x05\x5d\x3b\x52\x6f\x3e\x67\x33\x75\x13\x27\x29\x7d\x5d\xd5\x2e\xf8\xa2\xbb\x42\xe6\x29\x54\xc3\x2d\x42\x53\xb7\xfd\x4d\x52\xc5\x52\x25\xfd\x97\xae\x5d\xb2\xba\x45\x22\xc7\x7e\x2d\xd1\x60\xdc\xc5\x28\xa1\x09\x9f\x51\x48\xbe\x6b\xca\x00\x96\x2a\x49\xd7\xa8\x99\x3a\x0c\xa2\x32\x01\x15\x7e\x0e\x2d\x81\xe9\x1b\xa2\xf3\xfb\x03\x5d\x79\xfe\xc5\xde\x9c\xd9\x6c\xe8\xa5\xc5\x0a\xf4\x9c\xf9\x4b\x2b\xa6\xcd\xd6\xa3\xc6\x1c\xbe\x23\x8c\x7d\xee\x7d\xf0\x36\x3c\x11\xd6\x09\x6d\xf7\x44\x38\x2c\x41\x00\x04\x1d\x56\xe6\xb8\xc4\xa7\xa0\x5a\x15\x87\x39\x53\xad\x29\xf0\x8a\xbc\x1f\x3b\x63\x53\xe8\xfe\xef\xde\x0d\xa6\x57\x23\x4c\xde\x19\xcb\x18\x7b\xe5\x4d\xa3\xb4\x3b\xa6\xf1\x1d\x96\x3d\xc9\x4d\x22\x97\xda\xc5\x6e\x97\xc4\xef\x00\x00\x00\xff\xff\x6c\xd5\xa9\x59\x50\x0a\x00\x00") +var _templateDialectGremlinPredicateTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xd4\x56\x4d\x6f\xdb\x38\x10\x3d\xcb\xbf\x62\x60\x04\x58\xc9\x50\xa8\x3d\x2f\xe0\x43\x76\x37\xbb\x35\x50\xc4\x68\x53\xa4\x87\x20\x30\x18\x71\x64\x13\x51\x48\x81\xa4\x94\x83\xc0\xff\x5e\x8c\x28\x5b\xfe\x4a\x63\xc4\x68\x8b\x9e\x2c\x78\x1e\x67\xde\xbc\x79\x03\xb2\x6d\x41\x60\x21\x15\xc2\x58\x48\x5e\x62\xee\xb2\xa5\xc1\xe7\x52\xaa\xac\x32\x28\x64\xce\x1d\x66\x52\x8c\xe1\xd2\xfb\x51\x54\xd4\x2a\x8f\x1d\x4c\x84\x2d\xd9\x17\xc3\x1b\x34\x96\x97\x09\xb4\xa3\x28\x72\xec\x03\xb7\xb3\x7f\x63\x29\x92\x51\xe4\x47\x6d\x7b\x09\xa8\x04\x78\x3f\x1a\x9d\x58\x23\xd3\x95\x0d\x75\xe8\xf0\x85\xae\xe0\xaf\x29\x5c\xb0\xdb\x5c\x57\xc8\xe6\xd5\x10\xe1\x66\xb9\x1d\xba\x32\xcb\x37\xd9\xd1\x39\x59\x50\x52\x76\xc7\x8d\xe4\x42\xe6\x44\x2d\x8a\xa2\x86\x52\x3d\xf3\x27\x8c\xef\x1f\xa4\x72\x68\x0a\x9e\x63\xeb\x53\x28\x51\xc5\x6d\x1b\xaa\x79\x9f\x24\x04\x2e\xb4\x01\x49\x07\x0c\x57\x4b\x84\xa6\xcb\x1d\x45\xcd\xbd\x7c\x80\x29\x0c\xe8\x7b\xf9\x40\x01\xdf\x57\xee\x85\x18\x44\xaa\x18\x61\x75\xc5\xfe\x0f\x3a\x80\xf7\x54\xeb\x90\x61\xc3\x18\x41\xb1\xb4\x08\xde\x0f\x05\xe8\xbf\x2e\x69\xf2\x3e\xb5\x0b\x89\xe5\x7a\xa8\x9d\xa6\xc5\xb6\xa2\xff\x51\xf4\xb4\x89\xc7\x1f\xf9\x23\x96\x69\xd7\x7b\xc1\xfe\xd1\xca\x3a\xae\x1c\x78\x9f\x42\xc5\xae\x3f\xc5\xcd\x39\x04\x07\x47\x7c\x9f\xe4\xeb\x7e\x39\x8f\xff\xe1\x90\x9a\xa3\x53\xea\x87\x74\xce\x40\x50\x2c\x31\x5b\xf1\x9d\x76\x71\xbb\xa1\x6b\xb1\xc4\xad\x58\x49\xb4\xbb\x38\x0e\xac\x87\xb0\x90\x06\x73\x27\xb5\x22\xc8\x78\x5e\xbb\xad\xbc\xc4\x1f\xd9\xcc\xce\x14\xa9\xd1\x27\xdd\x3f\x36\x85\xf1\x4c\x8d\x37\xb1\x6c\x02\xbc\xd1\x52\x40\x2e\x4d\x5e\x97\xdc\x80\xc0\x0a\x95\xc0\x5c\xa2\x85\x49\x36\xa4\x08\xc4\x3a\x5e\x7d\x81\x43\x7a\xa4\xcc\x29\x1b\x9b\x4d\x88\xac\x74\x7f\x58\xe0\x0a\x48\x22\x78\x91\x6e\x05\x16\xcb\xe2\xd2\x60\x81\x06\x55\x8e\x29\x38\xfe\x84\xe0\x56\x08\xee\x45\x43\x83\xc6\xc9\x7c\x97\x55\x68\xf9\x16\xcb\xe2\x33\x16\xfd\xe2\x3b\xf6\xb7\x76\xab\x6e\xc5\x03\x67\xef\x93\xf5\xbe\x86\x75\x0b\x28\x02\x0c\xba\x78\x7f\xbd\x7b\xe4\x20\x7e\x17\x27\x7b\x6b\x7f\x86\x1d\xa8\xdd\x9f\x60\x89\x0b\x19\x46\xb5\xd8\x05\x6d\x1c\xf0\x5e\xdb\x1c\xcd\xbc\x53\xfd\x97\x79\x6b\xdf\x12\x1d\x0f\x32\x96\xc1\x02\x9e\x91\x2b\x0b\xd2\x81\x5d\xe9\xba\x14\xf0\x88\xe0\x4c\x8d\x20\x15\x68\x85\xa0\x8b\xce\x6d\x9b\x96\x36\x2c\x23\xa9\x52\xd0\xb5\x23\xf5\x16\x0b\x36\x53\x77\x71\x92\xd2\xd7\xbc\x76\xc1\x17\xdd\x15\xb2\x48\xa1\x1a\x6e\x11\x9a\xba\xed\x6f\x92\x2a\x96\x2a\xe9\xbf\x74\xed\x92\xf5\x2d\x12\x39\xf6\x75\x85\x06\xe3\x2e\x46\x09\x4d\xf8\x8c\x42\xf2\x7d\x53\x06\xb0\x54\x49\xba\x41\xcd\xd4\x71\x10\x95\x09\xa8\xf0\x73\x6c\x09\x4c\xdf\x10\x9d\x3f\x1c\xe8\xda\xf3\x6f\xf6\xe6\xcc\x76\x43\x6f\x2d\x56\xa0\xe7\xcc\x0f\x5a\x31\xae\x76\x5f\x35\xe6\xf8\x25\x61\xec\x6b\x0f\x84\x3f\xc3\x1b\x61\x93\xd1\x76\x6f\x84\xe3\x1a\x04\x40\x10\x62\xed\x8e\x1b\x7c\x09\xb2\x55\x71\x18\x34\xd5\x9a\x02\xaf\xc8\xfc\xb1\x33\x36\x85\xee\xff\xee\xe1\x60\x7a\x39\x16\x0b\x76\x15\xa2\x8c\xb1\x77\xde\x35\xda\xfc\x9e\x8d\xcf\xcd\x79\x7d\x2b\xed\x4e\x69\x7c\x8f\x65\x4f\x72\x9b\xc8\x8d\x76\xb1\xdb\x27\xf1\x2d\x00\x00\xff\xff\x8f\xe5\x3c\xa1\x4a\x0b\x00\x00") func templateDialectGremlinPredicateTmplBytes() ([]byte, error) { return bindataRead( @@ -450,7 +439,7 @@ func templateDialectGremlinPredicateTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/gremlin/predicate.tmpl", size: 2640, mode: os.FileMode(420), modTime: time.Unix(1564494654, 0)} + info := bindataFileInfo{name: "template/dialect/gremlin/predicate.tmpl", size: 2890, mode: os.FileMode(420), modTime: time.Unix(1565107015, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -470,7 +459,7 @@ func templateDialectGremlinQueryTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/gremlin/query.tmpl", size: 3733, mode: os.FileMode(420), modTime: time.Unix(1564494654, 0)} + info := bindataFileInfo{name: "template/dialect/gremlin/query.tmpl", size: 3733, mode: os.FileMode(420), modTime: time.Unix(1564480239, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -490,7 +479,7 @@ func templateDialectGremlinUpdateTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/gremlin/update.tmpl", size: 4741, mode: os.FileMode(420), modTime: time.Unix(1564494654, 0)} + info := bindataFileInfo{name: "template/dialect/gremlin/update.tmpl", size: 4741, mode: os.FileMode(420), modTime: time.Unix(1564480239, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -510,7 +499,7 @@ func templateDialectSqlByTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/sql/by.tmpl", size: 753, mode: os.FileMode(420), modTime: time.Unix(1564494654, 0)} + info := bindataFileInfo{name: "template/dialect/sql/by.tmpl", size: 753, mode: os.FileMode(420), modTime: time.Unix(1564480239, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -530,7 +519,7 @@ func templateDialectSqlCreateTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/sql/create.tmpl", size: 6066, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/dialect/sql/create.tmpl", size: 6066, mode: os.FileMode(420), modTime: time.Unix(1564868040, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -550,7 +539,7 @@ func templateDialectSqlDecodeTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/sql/decode.tmpl", size: 1991, mode: os.FileMode(420), modTime: time.Unix(1564498182, 0)} + info := bindataFileInfo{name: "template/dialect/sql/decode.tmpl", size: 1991, mode: os.FileMode(420), modTime: time.Unix(1564480239, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -570,7 +559,7 @@ func templateDialectSqlDeleteTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/sql/delete.tmpl", size: 489, mode: os.FileMode(420), modTime: time.Unix(1564440681, 0)} + info := bindataFileInfo{name: "template/dialect/sql/delete.tmpl", size: 489, mode: os.FileMode(420), modTime: time.Unix(1563979564, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -590,7 +579,7 @@ func templateDialectSqlErrorsTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/sql/errors.tmpl", size: 771, mode: os.FileMode(420), modTime: time.Unix(1564494654, 0)} + info := bindataFileInfo{name: "template/dialect/sql/errors.tmpl", size: 771, mode: os.FileMode(420), modTime: time.Unix(1564480239, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -610,7 +599,7 @@ func templateDialectSqlGroupTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/sql/group.tmpl", size: 835, mode: os.FileMode(420), modTime: time.Unix(1560858192, 0)} + info := bindataFileInfo{name: "template/dialect/sql/group.tmpl", size: 835, mode: os.FileMode(420), modTime: time.Unix(1558503319, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -630,12 +619,12 @@ func templateDialectSqlMetaTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/sql/meta.tmpl", size: 1586, mode: os.FileMode(420), modTime: time.Unix(1564494654, 0)} + info := bindataFileInfo{name: "template/dialect/sql/meta.tmpl", size: 1586, mode: os.FileMode(420), modTime: time.Unix(1564480239, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _templateDialectSqlPredicateTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x57\x4f\x6f\xe3\xb6\x13\x3d\xcb\x9f\x62\x10\x18\xf8\x51\x81\x43\x27\x4e\x72\xf9\x01\x29\x10\xa4\x09\xe0\xb6\x89\x5b\x64\xd1\x1e\x82\x60\xc1\x4a\x23\x9b\x5b\x99\x54\x48\xda\x41\xa0\xd5\x77\x2f\x48\xd1\xfa\x63\x4b\x1b\xaf\x91\xa2\x97\x9e\x2c\x9a\xc3\x99\xf7\x66\xde\x8c\xa8\x3c\x87\x18\x13\x2e\x10\x8e\x62\xce\x52\x8c\xcc\x58\xbf\xa4\xe3\x4c\x61\xcc\x23\x66\x70\xcc\xe3\x23\x38\x29\x8a\x41\x90\xac\x44\x44\x34\x1c\xeb\x97\x94\x3e\xa2\xb5\x94\x2a\x84\x7c\x10\x04\x79\x7e\x02\x3c\x81\x21\x9d\xfe\x48\xa7\xfa\xd1\x28\x2e\xe6\x50\x14\x3c\x1e\xc1\x67\xf8\xff\x15\x68\xa3\x22\x29\xd6\xf4\xda\x48\x4e\x78\x1c\x5a\x7b\x14\x31\x58\xaf\x81\xa6\x7f\x2c\x50\x21\xb1\x6e\x6f\x7f\x23\x9a\xde\x90\x3c\x2f\x7d\xdd\x48\xa1\x0d\x13\x06\x8a\x22\x1c\x01\x8f\xc3\x70\x10\x14\x83\xc6\xe9\xc1\x1e\xe8\xc7\x32\xd3\x9e\x81\x3d\x39\x94\x99\x85\x34\xa4\x8f\x91\xcc\x90\xce\xb2\xc6\x16\x53\xf3\xe6\xde\xb5\x9a\xef\xcb\x5c\x66\xf4\x77\xa6\x38\x8b\x79\x54\xb2\x0a\xc6\x63\xbb\x21\xa4\x01\xa6\xe6\xab\x25\x0a\xa3\xe1\x15\x15\x42\xa6\xe4\x9a\xc7\x18\x8f\x80\x65\x99\xe5\x61\x16\x08\x77\xd7\xbf\x3c\xde\x42\xe4\xf9\xea\x91\xf7\xa0\xb9\x88\x10\x5e\x11\x22\x26\xfe\x67\xec\x81\xf4\x0d\x8e\xa6\x0f\x40\xc2\x23\x0a\x9f\x16\x5c\xc3\x2b\x4f\x53\x58\xb2\xbf\x10\x8c\x5d\x56\xcc\x21\x61\xa9\x7e\xa3\xd6\x11\x4f\x20\x45\xe1\xb2\x6a\x19\x16\x45\x08\x57\x57\x70\xea\x08\xb4\xf3\x7f\xc7\x52\x8d\xc4\xa6\x39\x08\x02\x85\x66\xa5\x84\x7d\x74\x84\xd6\x36\x35\x36\x10\x79\x7a\xe6\xc2\xa0\x4a\x58\x84\x79\x31\xda\xf6\xed\x0e\x27\x52\x01\xb7\x07\x14\x13\x73\x84\xb5\x8f\x95\xe7\x5d\x3a\x59\x3f\xf1\x67\xab\x94\x2d\xa1\xd4\x3e\x9f\xf8\x73\x98\xe7\x80\xa9\x46\x6f\x0e\x57\xd0\xda\xb6\xbb\x1b\x41\x39\xb8\x4e\x24\xd6\xbe\x23\x9e\xcb\x49\xa7\x36\x1b\x34\x36\x3e\xba\x64\x6a\xcd\x64\x46\x1f\xd8\xd2\xe2\xf9\x86\x64\x3d\xdf\xb6\x3a\xd6\x94\xd2\x9a\x0d\x8f\x2b\xec\x07\xc8\x3b\xe1\x98\xc6\x4d\x75\x27\x4d\x01\xdf\xd9\xdd\xf7\x24\xdc\xd3\x7f\xc9\x16\x95\xf5\xa1\xe8\xb6\xfb\xaf\x0f\xe1\x7f\xcd\x79\x78\x73\x7e\xaf\x52\x77\x8a\xdb\x29\x54\xaf\xd3\x43\xb5\x89\xf1\x1c\xc7\x0b\xd6\x2a\x3e\x36\x4b\x78\x1b\xcf\x71\xdf\x1a\x22\xbd\x9f\xdc\x83\x2f\x9f\x39\x73\x9d\x4b\x3f\xb1\x3f\x53\x24\x2e\x21\x1b\xd2\x65\xd6\x5e\x52\x3a\x15\xe5\x73\x60\xce\xfa\xda\xb3\xdc\xaf\x63\x3a\x2b\xa4\xbf\xfe\xdc\xb0\x7a\xf2\x99\x41\x3a\xd5\x53\xb1\x46\xe5\x9a\xf6\xac\xee\xdf\xd3\x2a\x45\xcf\x21\xbd\x53\x72\xe9\xf2\x5e\x22\x2b\xfd\xb9\xe7\x66\x60\x1f\xb9\xfc\x09\xb7\x86\x95\x54\x25\xd9\x19\x10\x26\x62\xfb\x3c\x9b\xcc\x5a\xf1\x43\x28\x8a\x3c\x1f\x1f\x83\x35\xfa\xfa\x15\x88\x35\x78\xe5\x66\x01\xdc\x03\xb4\x99\x0f\xe1\x78\xfc\x6e\xb6\x2c\xd4\x07\x69\x1e\x56\x69\x4a\xaa\x3c\x21\xbd\x91\xe9\x6a\x29\x5a\x90\x5b\x30\x7d\xfc\xd9\xe4\xbe\x1d\x9f\x69\x2d\xa3\xfd\xa3\x7f\x40\xad\x76\x91\xd2\xd2\x32\xd8\xb3\x14\x1b\xf3\xdd\x7c\xf4\xa6\xa2\xb3\x7a\xbe\xf9\x0e\x6c\x11\x9b\xbd\x8f\x6f\x13\xcb\xc0\xbd\x84\xcf\x5c\xc5\x60\xf8\xc5\x2e\x4e\xdd\xe2\xa4\x43\xd5\xa5\xfd\xc6\xc2\x9a\x57\x47\x2d\xa3\x93\xde\x82\x9a\x89\xfb\xab\x4a\xb6\x7f\xd7\xbb\x18\x02\x61\x58\xfe\xed\x0a\xf0\x96\xf9\x2a\x6c\xdc\x95\x30\x91\x7a\x18\xdb\x15\xaa\x5c\x39\xe1\x55\x67\x9c\x59\xbd\x57\xa3\x2b\xf1\x9c\xb7\xf1\xf4\x14\xdf\x99\x5e\x6c\x4c\xbd\xae\xcc\x79\xd5\x06\x3b\x83\x60\xf8\xc5\xb5\xb9\x17\x8d\x53\x98\x39\xf7\xab\x9f\x24\x17\xc4\x4c\xfc\x6a\x26\xbe\xed\x88\x3b\x47\x23\x30\x93\xca\xc8\xa5\x66\x4b\xf6\x25\xc4\xcb\x2d\x88\x7e\xce\x98\x49\x75\xd5\xfa\x3c\x82\xac\xbe\x6d\x59\x7d\x69\xff\x02\xc9\x88\xb9\x0c\xab\x3b\x9c\xb9\x70\x47\x37\x54\x2f\x77\x86\xc1\x54\x90\xfe\x1e\x04\x73\x11\xfe\x2b\xe3\xaa\xd6\x57\xab\xf9\xbb\x32\xb6\x3d\x82\xff\x79\x29\x76\x8b\xab\x53\x9b\xfb\xd5\x6b\x52\xd7\xab\xaf\x34\x5d\x73\xc9\x8a\xe9\x43\xc7\x74\x4f\xd6\x3b\x46\xee\x9e\xb3\xf6\xa3\xd8\x77\x08\xb3\xc1\xfc\xb0\x49\x2c\xd5\xbb\x5f\xb9\xee\x9b\x66\x07\xba\x3b\xee\xf1\xf3\x04\x38\xfc\xd0\xb8\xbc\xcd\x14\xa9\xe9\x64\x44\xdb\xc5\xf7\x63\x13\xd2\xbc\x0b\x2e\x23\xda\xbe\xb9\xc8\xce\x3d\xed\xef\x00\x00\x00\xff\xff\x2f\x58\x90\xb0\xe0\x0f\x00\x00") +var _templateDialectSqlPredicateTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x57\xdf\x4f\xeb\x36\x14\x7e\x0e\x7f\xc5\x11\xaa\x34\x07\x15\x17\x0a\xbc\x4c\x62\x12\x62\x20\x75\x1b\x74\x13\x57\xdb\x03\x42\x57\x5e\x72\xd2\xfa\x2e\xb5\x83\xed\x16\xa1\xdc\xfc\xef\x93\x1d\x37\x3f\xda\x04\x7a\x2b\xa6\xbd\xdc\x27\x92\xfa\xf8\x9c\xef\xfb\xce\x77\x1c\x93\xe7\x10\x63\xc2\x05\xc2\x61\xcc\x59\x8a\x91\x19\xe9\xe7\x74\x94\x29\x8c\x79\xc4\x0c\x8e\x78\x7c\x08\xc7\x45\x71\x10\x24\x4b\x11\x11\x0d\x47\xfa\x39\xa5\x0f\x68\x23\xa5\x0a\x21\x3f\x08\x82\x3c\x3f\x06\x9e\xc0\x80\x4e\x7e\xa6\x13\xfd\x60\x14\x17\x33\x28\x0a\x1e\x0f\xe1\x33\xfc\x78\x09\xda\xa8\x48\x8a\x15\xbd\x32\x92\x13\x1e\x87\x36\x1e\x45\x0c\x36\x6b\xa0\xe9\x5f\x73\x54\x48\x6c\xda\x9b\x3f\x88\xa6\xd7\x24\xcf\xcb\x5c\xd7\x52\x68\xc3\x84\x81\xa2\x08\x87\xc0\xe3\x30\x3c\x08\x8a\x83\xc6\xee\x83\x1d\xd0\x8f\x64\xa6\x3d\x03\xbb\x73\x20\x33\x0b\x69\x40\x1f\x22\x99\x21\x9d\x66\x8d\x25\xa6\x66\xcd\xb5\x2b\x35\xdb\x95\xb9\xcc\xe8\x9f\x4c\x71\x16\xf3\xa8\x64\x15\x8c\x46\x76\x41\x48\x03\x4c\xcd\x96\x0b\x14\x46\xc3\x0b\x2a\x84\x4c\xc9\x15\x8f\x31\x1e\x02\xcb\x32\xcb\xc3\xcc\x11\x6e\xaf\x7e\x7b\xb8\x81\xc8\xf3\xd5\x43\x9f\x41\x73\x11\x21\xbc\x20\x44\x4c\xfc\x60\xec\x86\xf4\x15\x0e\x27\xf7\x40\xc2\x43\x0a\x9f\xe6\x5c\xc3\x0b\x4f\x53\x58\xb0\x7f\x10\x8c\x7d\xad\x98\x43\xc2\x52\xfd\x4a\x6d\x22\x9e\x40\x8a\xc2\xa9\x6a\x19\x16\x45\x08\x97\x97\x70\xe2\x08\xb4\xf5\xbf\x65\xa9\x46\x62\x65\x0e\x82\x40\xa1\x59\x2a\x61\x1f\x1d\xa1\x95\x95\xc6\x16\x22\x8f\x4f\x5c\x18\x54\x09\x8b\x30\x2f\x86\x9b\xb9\xdd\xe6\x44\x2a\xe0\x76\x83\x62\x62\x86\xb0\xf2\xb5\xf2\xbc\xcb\x27\xab\x47\xfe\x64\x9d\xb2\x61\x94\x3a\xe7\x23\x7f\x0a\xf3\x1c\x30\xd5\xe8\xc3\xe1\x12\x5a\xcb\x76\x75\x6d\x28\x07\xd7\x99\xc4\xc6\x77\xd4\x73\x9a\x74\x7a\xb3\x41\x63\x9d\xa3\xcb\xa6\x36\x4c\x66\xf4\x9e\x2d\x2c\x9e\x37\x2c\xeb\xf9\xb6\xdd\xb1\xa2\x94\xd6\x6c\x78\x5c\x61\xdf\xc3\xde\x09\xc7\x34\x6e\xba\x3b\x69\x1a\xf8\xd6\xae\xbe\x67\xe1\x9e\xf9\x4b\x36\xa8\xac\xf6\x45\xb7\x39\x7f\x7d\x08\xbf\x0f\xe7\xfe\xc3\xf9\xad\x4e\xdd\x6a\x6e\xa7\x51\xbd\x4f\xf7\xf5\x26\xc6\x33\x1c\xcd\x59\xab\xf9\xd8\x6c\xe1\x4d\x3c\xc3\x5d\x7b\x88\xf4\x6e\x7c\x07\xbe\x7d\xe6\xd4\x4d\x2e\xfd\xc4\xfe\x4e\x91\x38\x41\xd6\xa4\x4b\xd5\x9e\x53\x3a\x11\xe5\x73\x60\x4e\xfb\xc6\xb3\x5c\xaf\x6b\xba\x28\xa4\xbf\xff\xda\x88\x7a\xf4\xca\x20\x9d\xe8\x89\x58\xa1\x72\x43\x7b\x5a\xcf\xef\x49\x25\xd1\x53\x48\x6f\x95\x5c\x38\xdd\x4b\x64\x65\x3e\xf7\xdc\x2c\xec\x2b\x97\x7f\xc2\x8d\xc3\x4a\xaa\x92\xec\x14\x08\x13\xb1\x7d\x9e\x8e\xa7\xad\xfa\x21\x14\x45\x9e\x8f\x8e\xc0\x06\x7d\xfd\x0a\xc4\x06\xbc\x70\x33\x07\xee\x01\x5a\xe5\x43\x38\x1a\xbd\xab\x96\x85\x7a\x2f\xcd\xfd\x32\x4d\x49\xa5\x13\xd2\x6b\x99\x2e\x17\xa2\x05\xb9\x05\xd3\xd7\x9f\x8e\xef\xda\xf5\x99\xd6\x32\xda\xbd\xfa\x07\xf4\x6a\x1b\x29\x2d\x23\x83\x1d\x5b\xb1\x0e\xdf\xd6\xa3\x57\x8a\xce\xee\xf9\xe1\xdb\x73\x44\xac\x7a\x1f\x3f\x26\x96\x81\xfb\x08\x9f\xba\x8e\xc1\xe0\x8b\x7d\x39\x71\x2f\xc7\x1d\xae\x2e\xe3\xd7\x11\x36\xbc\xda\x6a\x19\x1d\xf7\x36\xd4\x8c\xdd\x4f\x95\xd8\xfe\x5b\xef\x6a\x08\x84\x41\xf9\xb3\x6b\xc0\x6b\xe6\xbb\xb0\x4e\x57\xc2\x44\xea\x61\x6c\x76\xa8\x4a\xe5\x8c\x57\xed\x71\x61\xf5\x5a\x8d\xae\xc4\x73\xd6\xc6\xd3\xd3\x7c\x17\x7a\xbe\x0e\xf5\xbe\x32\x67\xd5\x18\x6c\x1d\x04\x83\x2f\x6e\xcc\xbd\x69\x9c\xc3\xcc\x99\x7f\xfb\x45\x72\x41\xcc\xd8\xbf\x4d\xc5\xdb\x89\xb8\x4b\x34\x04\x33\xae\x82\x9c\x34\x1b\xb6\x2f\x21\x5e\x6c\x40\xf4\xe7\x8c\x19\x57\x57\xad\xcf\x43\xc8\xea\xdb\x96\xf5\x97\xf6\x1f\x90\x8c\x98\x8b\xb0\xba\xc3\x99\x73\xb7\x75\x4d\xf5\x62\xeb\x30\x98\x08\xd2\x3f\x83\x60\xce\xc3\xff\xe5\xb8\xaa\xfd\xd5\x1a\xfe\x2e\xc5\x36\x8f\xe0\xff\xde\x8a\xdd\xe6\xea\xf4\xe6\x6e\xfd\x1a\xd7\xfd\xea\x6b\x4d\xd7\xb9\x64\xcd\xf4\xa1\xc7\x74\x8f\xea\x1d\x47\xee\x8e\x67\xed\x47\xb1\xef\x30\x66\x83\xf9\x7e\x27\x31\x13\xef\xff\x9b\xdb\x8d\xdd\xed\xf7\x04\x32\xa2\x2d\x8e\x6f\x2f\x2f\xd5\x4e\xd5\xf9\x9b\xd5\x79\x02\x1c\x7e\x6a\xdc\x1d\xa7\x8a\xd4\x6a\xee\x8d\x4d\x48\xf3\x2e\xb8\x8c\x68\xfb\xe1\x24\x5b\xd7\xc4\x7f\x03\x00\x00\xff\xff\xdd\xb7\x61\x67\x5f\x10\x00\x00") func templateDialectSqlPredicateTmplBytes() ([]byte, error) { return bindataRead( @@ -650,7 +639,7 @@ func templateDialectSqlPredicateTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/sql/predicate.tmpl", size: 4064, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/dialect/sql/predicate.tmpl", size: 4191, mode: os.FileMode(420), modTime: time.Unix(1565107015, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -670,7 +659,7 @@ func templateDialectSqlQueryTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/sql/query.tmpl", size: 6186, mode: os.FileMode(420), modTime: time.Unix(1564498182, 0)} + info := bindataFileInfo{name: "template/dialect/sql/query.tmpl", size: 6186, mode: os.FileMode(420), modTime: time.Unix(1564480239, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -690,7 +679,7 @@ func templateDialectSqlUpdateTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/sql/update.tmpl", size: 11240, mode: os.FileMode(420), modTime: time.Unix(1564498182, 0)} + info := bindataFileInfo{name: "template/dialect/sql/update.tmpl", size: 11240, mode: os.FileMode(420), modTime: time.Unix(1563979564, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -710,7 +699,7 @@ func templateEntTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/ent.tmpl", size: 3369, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/ent.tmpl", size: 3369, mode: os.FileMode(420), modTime: time.Unix(1564913307, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -730,7 +719,7 @@ func templateExampleTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/example.tmpl", size: 2204, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/example.tmpl", size: 2204, mode: os.FileMode(420), modTime: time.Unix(1564913333, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -750,7 +739,7 @@ func templateHeaderTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/header.tmpl", size: 240, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/header.tmpl", size: 240, mode: os.FileMode(420), modTime: time.Unix(1564913919, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -770,7 +759,7 @@ func templateImportTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/import.tmpl", size: 506, mode: os.FileMode(420), modTime: time.Unix(1564494654, 0)} + info := bindataFileInfo{name: "template/import.tmpl", size: 506, mode: os.FileMode(420), modTime: time.Unix(1564480239, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -790,7 +779,7 @@ func templateMetaTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/meta.tmpl", size: 2162, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/meta.tmpl", size: 2162, mode: os.FileMode(420), modTime: time.Unix(1564915819, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -810,7 +799,7 @@ func templateMigrateMigrateTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/migrate/migrate.tmpl", size: 725, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/migrate/migrate.tmpl", size: 725, mode: os.FileMode(420), modTime: time.Unix(1564915810, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -830,7 +819,7 @@ func templateMigrateSchemaTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/migrate/schema.tmpl", size: 2705, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/migrate/schema.tmpl", size: 2705, mode: os.FileMode(420), modTime: time.Unix(1564915814, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -850,7 +839,7 @@ func templatePredicateTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/predicate.tmpl", size: 967, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/predicate.tmpl", size: 967, mode: os.FileMode(420), modTime: time.Unix(1564915823, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -870,12 +859,12 @@ func templateTxTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/tx.tmpl", size: 3185, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/tx.tmpl", size: 3185, mode: os.FileMode(420), modTime: time.Unix(1564913364, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _templateWhereTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xe4\x57\xc1\x6e\xe3\x36\x10\x3d\x4b\x5f\x31\x20\x14\x54\x02\x12\x0a\xbd\x16\xd8\x43\x01\x6f\xb1\xbe\x24\x5b\xb4\x68\x0f\x41\x50\x70\xa5\x91\x4c\x44\x26\xb9\x24\xed\xec\x82\xd5\xbf\x17\x24\x65\x49\x59\xdb\x9b\x18\x49\xd0\x1a\xbd\xc5\xe2\xcc\x70\xe6\xbd\x37\x2f\xa0\x73\x50\x63\xc3\x05\x02\x79\x58\xa1\x46\x02\x7d\x9f\xa6\xce\x5d\xc1\x03\xb7\x2b\xc0\x2f\x16\x45\x0d\x19\x90\x8f\xac\xba\x67\x2d\x12\xc8\xe8\xf0\x27\x5c\xf5\x7d\x9a\x38\x07\x16\xd7\xaa\x63\x16\x81\xac\x90\xd5\xa8\x09\x50\x5f\xc5\x39\xf0\xb9\xb1\xde\x2c\x88\xaf\x95\xd4\x96\x40\x16\x8e\xca\x12\x96\x0b\x68\x78\x67\x51\x1b\xd8\xa2\xb6\xbc\x42\x03\x9f\x98\xc1\x1a\xa4\x00\xbb\x42\xae\x81\xd7\x28\x2c\x6f\x38\x6a\x9a\x36\x1b\x51\xc1\x72\x91\xf3\x1a\x9c\x83\x8c\x2e\x17\xf4\xf7\xaf\x0a\xa1\xef\x0b\x50\x1a\x6b\x5e\x31\x8b\x34\x1c\x5d\xb3\xb5\xff\x0e\x2e\x4d\x34\xda\x8d\x16\x47\x02\x9c\x03\xde\x40\x6b\x21\xef\x50\x40\x46\x7f\xb3\x52\xb3\x16\x0b\xf8\x11\xfa\xfe\x23\xea\x05\x67\x1d\x56\x76\x9c\x28\x4f\x13\x3f\xb8\x66\xa2\x45\xc8\xfe\xba\x84\xcc\xc4\x0c\xf8\xe9\xdd\x94\x1e\x01\x0a\x91\x99\x5d\xab\xce\x1f\x2a\xcd\x85\x6d\x80\xd4\xb1\x62\x79\x61\xca\xb1\xa5\x92\xd7\x64\xaa\xb4\xcb\xbd\x82\x2f\x23\x76\xb1\x8c\x07\xee\x32\x76\xe0\xdb\x09\xb7\x14\x69\x84\x79\xd6\x92\x54\xfe\x42\xa9\x4c\xc0\x08\x06\xb2\x32\xa6\x5b\xff\x9d\xf8\xcb\x76\x93\x67\x52\xd1\x3f\x98\xe6\xac\xe6\x55\xfc\x18\xc2\x42\x94\x19\xc2\x06\x2e\x43\x8d\x40\xc1\x6c\x9a\xe5\xe2\xc2\x90\x50\x65\x00\x34\x4d\xca\x12\xc6\xc8\xbe\x07\xa6\x54\xc7\xd1\x78\x3a\xc3\xf7\x29\x74\xa2\x64\xa0\x3b\xea\x01\xbb\x9a\xa6\x49\x48\x9f\xd5\xc9\x77\xad\x79\x52\x0f\xb5\x4e\x29\x1d\x7b\x3d\x41\x1d\xaf\x2f\x8f\x13\xf4\x91\x1c\x58\xb7\x9f\x75\x4b\xe2\xa4\xe4\x46\x05\x68\xc7\xe8\x53\xf4\x54\x4a\x65\xf6\x34\x75\x58\x55\x74\x50\xd5\x63\x5d\x7d\xf3\xab\x48\x93\x6f\x17\x7b\x36\x64\x13\xc7\xfb\xc5\x93\x67\xf6\xc5\xc2\x4c\xc5\x3a\xc8\x9a\x27\x45\x82\x9f\x37\xac\xe3\xf6\x2b\x54\x2b\xac\xee\xf7\x05\xe2\x1c\x7c\xde\x48\xdf\xf9\x58\x6b\x50\x0c\x2c\xed\x0f\x66\x70\x0b\x7f\x99\x95\xf3\x0b\xde\xff\x7a\x48\x52\xdb\xf8\xeb\x2c\x65\x12\xa0\x26\x1e\xf9\xd3\xd5\xd1\x0c\xb9\xff\xa6\x38\xf6\xec\x2a\x0f\x7e\xd5\x14\x7b\x76\xb5\x7d\x8e\x5b\x6d\x9f\x34\x2b\xc8\x1f\xcb\xb0\x80\x7c\xe7\x45\xc5\x4b\x7d\xeb\xb8\x2c\x5f\xc1\xc8\x9e\xa7\x4f\xcf\xdd\x7e\x2d\xcf\xd4\xd6\x43\xb0\x66\xf7\x98\xdf\xde\x71\x61\x51\x37\xac\x42\xd7\x5f\x42\x87\x62\xd6\x4c\x51\xf8\xe0\x46\x6a\xe0\x3e\x21\xf2\xb3\x0d\xb5\x93\x64\x7b\xcb\xef\xe0\x1d\x4c\xd1\xb7\xfc\xce\x1f\xf4\xc3\xcd\x3b\xd4\xff\x73\x6b\x32\x73\xd3\x69\x63\x5e\x60\xac\x81\xd5\x37\xf1\xd6\x64\x12\xef\xd1\x4d\x1a\xe6\x7e\x5f\xb7\x78\xdc\x65\x31\xc2\xfd\xf7\x38\xc8\x07\x66\x2e\xc2\x7a\x7c\x57\xe3\x1f\x98\xf1\x75\xbf\x27\x6e\x1c\x15\x87\x75\x8b\x87\xb4\x7d\x56\x16\xea\xc7\x25\x1e\xd4\xd3\x65\xe0\xe7\x2f\x57\xec\x6d\x54\x10\xd1\x9c\x3a\xb8\x30\x7f\x72\xbb\x22\x23\xca\xaf\x4b\x63\x44\x85\x41\xcb\xb7\x28\xa0\x92\xa2\xe6\x96\x4b\x61\x20\x97\x76\x85\x7a\x2a\x64\x8a\x43\x8c\xfb\x63\x03\x94\xd2\xc7\xb4\x62\x30\xad\xdd\x45\xff\x37\x59\x3c\x44\xbe\xde\xec\xff\xab\x7f\x3b\xdd\x68\x68\xb5\xdc\x28\x03\x1d\x37\x16\x64\x33\x63\x2a\x8e\xe4\x59\x97\x1a\xa4\x42\xcd\xac\xd4\xf0\x09\xed\x03\x62\x50\xc3\x7a\x78\x4c\xdd\xe8\x7c\x96\xb5\xc7\xe2\x73\xf8\x3b\x87\xe7\x95\xd4\xcf\x7a\x5e\xd1\x63\xcf\xab\xb2\x84\x6b\x69\x1f\xed\x99\x90\x76\x42\x76\x58\xb1\xb8\x42\x13\x12\x11\xe3\x6b\x69\x73\x75\x04\x9f\x73\x07\x56\x48\xfb\x32\x64\x27\x51\xff\x13\x00\x00\xff\xff\x6b\x85\x47\xaa\x90\x10\x00\x00") +var _templateWhereTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xe4\x57\x4d\x6f\xe3\x36\x10\x3d\x4b\xbf\x62\x20\x28\xa8\x04\x24\x14\x7a\x2d\xb0\x87\x00\xde\x62\x7d\x49\xb6\x1f\x68\x0f\x41\x50\x70\xa5\x91\x4c\x44\x26\xb9\x24\xad\xec\x82\xd5\x7f\x2f\x48\xca\x92\xb2\xb6\xb3\x36\x92\xa0\x1b\xe4\x66\x91\x33\xc3\x99\xf7\x1e\x9f\x41\x6b\xa1\xc2\x9a\x71\x84\xe4\x7e\x85\x0a\x13\xe8\xfb\x38\xb6\xf6\x02\xee\x99\x59\x01\x7e\x31\xc8\x2b\x48\x21\xf9\x48\xcb\x3b\xda\x60\x02\x29\x19\x7e\xc2\x45\xdf\xc7\x91\xb5\x60\x70\x2d\x5b\x6a\x10\x92\x15\xd2\x0a\x55\x02\xc4\x55\xb1\x16\x5c\x6e\xa8\x37\x0b\x62\x6b\x29\x94\x49\x20\xf5\x5b\x45\x01\xcb\x05\xd4\xac\x35\xa8\x34\x74\xa8\x0c\x2b\x51\xc3\x27\xaa\xb1\x02\xc1\xc1\xac\x90\x29\x60\x15\x72\xc3\x6a\x86\x8a\xc4\xf5\x86\x97\xb0\x5c\x64\xac\x02\x6b\x21\x25\xcb\x05\xf9\xf3\xab\x44\xe8\xfb\x1c\xa4\xc2\x8a\x95\xd4\x20\xf1\x5b\x57\x74\xed\xd6\xc1\xc6\x91\x42\xb3\x51\xfc\x40\x80\xb5\xc0\x6a\x68\x0c\x64\x2d\x72\x48\xc9\x1f\x46\x28\xda\x60\x0e\x3f\x43\xdf\x7f\x44\xb5\x60\xb4\xc5\xd2\x8c\x13\x65\x71\xe4\x06\x57\x94\x37\x08\xe9\x3f\xe7\x90\xea\x90\x01\xbf\xbc\x9b\xd2\x03\x40\x3e\x32\x35\x6b\xd9\xba\x4d\xa9\x18\x37\x35\x24\x55\xa8\x58\x9c\xe9\x62\x6c\xa9\x60\x55\x32\x55\xda\xe6\x5e\xc0\x97\x11\xbb\x50\xc6\x01\x77\x1e\x3a\x70\xed\xf8\x53\xf2\x38\xc0\x3c\x6b\x49\x48\x77\xa0\x90\xda\x63\x04\x03\x59\x29\x55\x8d\x5b\x4f\xdc\x61\xdb\xc9\x53\x21\xc9\x5f\x54\x31\x5a\xb1\x32\x2c\xfa\x30\x1f\xa5\x87\xb0\x81\x4b\x5f\xc3\x53\x30\x9b\x66\xb9\x38\xd3\x89\xaf\x32\x00\x1a\x47\x45\x01\x63\x64\xdf\x03\x95\xb2\x65\xa8\x1d\x9d\x7e\x7d\x0a\x9d\x28\x19\xe8\x0e\x7a\xc0\xb6\x22\x71\xe4\xd3\x67\x75\xb2\x6d\x6b\x8e\xd4\x7d\xad\x13\x42\xc6\x5e\x4f\x50\xc7\xf3\xcb\xe3\x04\x7d\x44\x7b\xae\xdb\xa5\x6a\x92\x30\x69\x72\x2d\x3d\xb4\x63\xf4\x29\x7a\x2a\x84\xd4\x3b\x9a\xda\xaf\x2a\x32\xa8\xea\xa1\xae\xbe\xf9\xca\xe3\xe8\xdb\x8b\x3d\x1b\xb2\x0e\xe3\xfd\xea\xc8\xd3\xbb\x62\xa1\xba\xa4\x2d\xa4\xf5\x77\x45\x82\x9f\x37\xb4\x65\xe6\x2b\x94\x2b\x2c\xef\x76\x05\x62\x2d\x7c\xde\x08\xd7\xf9\x58\x6b\x50\x0c\x2c\xcd\x4f\x7a\x70\x0b\x77\x98\x11\xf3\x03\xde\xff\xb6\x4f\x52\x5d\xf8\x7a\x95\x32\xf1\x50\x27\x0e\xf9\xd3\xd5\x51\x0f\xb9\xff\xa7\x38\x76\xec\x2a\xf3\x7e\x55\xe7\x3b\x76\xd5\x1d\xe3\x56\xdd\x77\xcd\x0a\xb2\x87\x32\xcc\x21\xdb\x7a\x51\xfe\x54\xdf\x3a\x2c\xcb\x67\x30\xb2\xe3\xf4\xe9\xb8\xdb\xad\xe5\x98\xea\x1c\x04\x6b\x7a\x87\xd9\xcd\x2d\xe3\x06\x55\x4d\x4b\xb4\xfd\x39\xb4\xc8\x67\xcd\xe4\xb9\x0b\xae\x85\x02\xe6\x12\x02\x3f\x9d\xaf\x1d\x45\xdd\x0d\xbb\x85\x77\x30\x45\xdf\xb0\x5b\xb7\xd1\x0f\x27\x6f\x51\xff\xe1\xae\xc9\xcc\x4d\xa7\x1b\xf3\x04\x63\xf5\xac\xbe\x88\xb7\x46\x93\x78\x0f\xde\xa4\x61\xee\xf7\x55\x83\x87\x5d\x16\x03\xdc\xff\x8e\x83\x7c\xa0\xfa\xcc\x5f\x8f\x47\x35\xfe\x81\x6a\x57\xf7\x31\x71\xe3\xa8\x38\xac\x1a\xdc\xa7\xed\x57\x65\xa1\x6e\xdc\xc4\x81\x7a\xba\x0c\xdc\xfc\xc5\x8a\xbe\x8c\x0a\x02\x9a\x53\x07\x67\xfa\x6f\x66\x56\xc9\x88\xf2\xf3\xd2\x18\x50\xa1\xd0\xb0\x0e\x39\x94\x82\x57\xcc\x30\xc1\x35\x64\xc2\xac\x50\x4d\x85\x74\xbe\x8f\x71\xb7\xad\x81\x10\xf2\x90\x56\xf4\xa6\xb5\x3d\xe8\xad\xc9\xe2\x3e\xf0\xf5\x62\xff\xaf\x45\x01\x97\xbc\x82\x46\x89\x8d\xd4\xd0\x32\x6d\x40\xd4\x33\xa6\xc2\x48\x8e\xf5\xcb\xab\x05\x08\x89\x8a\x1a\xa1\xe0\x13\x9a\x7b\x44\x2f\x87\xf5\xf0\x9a\xba\xe4\x55\x36\xcb\xdb\xe1\xf1\x18\x06\x5f\xc3\x03\x8b\xf2\xe3\x5e\x58\xe4\xd0\x0b\xab\x28\xe0\x5a\x1d\x83\xf8\xf5\xef\x8f\x02\x7e\xad\xde\x04\xde\x42\x3d\x19\xee\x2b\x61\x1e\x38\x1b\x17\x66\x42\x76\x30\xb5\x60\x5a\x13\x12\x01\xe3\x2b\x61\x32\x79\x00\x9f\xd7\x0e\x2c\x17\xe6\x69\xc8\x4e\x36\xf2\x5f\x00\x00\x00\xff\xff\x21\x96\x69\xf1\x02\x12\x00\x00") func templateWhereTmplBytes() ([]byte, error) { return bindataRead( @@ -890,7 +879,7 @@ func templateWhereTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/where.tmpl", size: 4240, mode: os.FileMode(420), modTime: time.Unix(1565007749, 0)} + info := bindataFileInfo{name: "template/where.tmpl", size: 4610, mode: os.FileMode(420), modTime: time.Unix(1565107015, 0)} a := &asset{bytes: bytes, info: info} return a, nil } diff --git a/entc/gen/template/builder/query.tmpl b/entc/gen/template/builder/query.tmpl index cf9fd1549..93b278161 100644 --- a/entc/gen/template/builder/query.tmpl +++ b/entc/gen/template/builder/query.tmpl @@ -68,7 +68,7 @@ func ({{ $receiver }} *{{ $builder }}) Order(o ...Order) *{{ $builder }} { {{ $tmpl := printf "dialect/%s/query/path" (index $.Storage 0) }} {{- xtemplate $tmpl . -}} {{ end -}} - {{- end -}} + {{- end }} return query } {{ end }} diff --git a/entc/gen/template/dialect/gremlin/predicate.tmpl b/entc/gen/template/dialect/gremlin/predicate.tmpl index 98cc20acb..81adb4c52 100644 --- a/entc/gen/template/dialect/gremlin/predicate.tmpl +++ b/entc/gen/template/dialect/gremlin/predicate.tmpl @@ -86,6 +86,18 @@ } {{- end }} +{{ define "dialect/gremlin/predicate/and" -}} + func(tr *dsl.Traversal) { + trs := make([]interface{}, 0, len(predicates)) + for _, p := range predicates { + t := __.New() + p(t) + trs = append(trs, t) + } + tr.Where(__.And(trs...)) + } +{{- end }} + {{ define "dialect/gremlin/predicate/or" -}} func(tr *dsl.Traversal) { trs := make([]interface{}, 0, len(predicates)) diff --git a/entc/gen/template/dialect/sql/predicate.tmpl b/entc/gen/template/dialect/sql/predicate.tmpl index a536a4ade..400978228 100644 --- a/entc/gen/template/dialect/sql/predicate.tmpl +++ b/entc/gen/template/dialect/sql/predicate.tmpl @@ -127,6 +127,14 @@ } {{- end }} +{{ define "dialect/sql/predicate/and" -}} + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + } +{{- end }} + {{ define "dialect/sql/predicate/or" -}} func(s *sql.Selector) { for i, p := range predicates { diff --git a/entc/gen/template/where.tmpl b/entc/gen/template/where.tmpl index d73f37bdb..ba56d4fe7 100644 --- a/entc/gen/template/where.tmpl +++ b/entc/gen/template/where.tmpl @@ -98,8 +98,17 @@ func ID(id {{ $.ID.Type }}) predicate.{{ $.Name }} { } {{ end }} +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.{{ $.Name }}) predicate.{{ $.Name }} { + return predicate.{{ $.Name }}{{ if gt (len $.Storage) 1 }}PerDialect{{ end }}( + {{ range $_, $storage := $.Storage -}} + {{ $tmpl := printf "dialect/%s/predicate/and" $storage }} + {{- xtemplate $tmpl . }}, + {{ end -}} + ) +} -// Or groups list of predicates with the or operator between them. +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.{{ $.Name }}) predicate.{{ $.Name }} { return predicate.{{ $.Name }}{{ if gt (len $.Storage) 1 }}PerDialect{{ end }}( {{ range $_, $storage := $.Storage -}} diff --git a/entc/integration/ent/card/where.go b/entc/integration/ent/card/where.go index 30bd720c5..08610a3b5 100644 --- a/entc/integration/ent/card/where.go +++ b/entc/integration/ent/card/where.go @@ -354,7 +354,27 @@ func HasOwnerWith(preds ...predicate.User) predicate.Card { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.Card) predicate.Card { + return predicate.CardPerDialect( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + func(tr *dsl.Traversal) { + trs := make([]interface{}, 0, len(predicates)) + for _, p := range predicates { + t := __.New() + p(t) + trs = append(trs, t) + } + tr.Where(__.And(trs...)) + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.Card) predicate.Card { return predicate.CardPerDialect( func(s *sql.Selector) { diff --git a/entc/integration/ent/comment/where.go b/entc/integration/ent/comment/where.go index 3c5ba7592..4b37c7552 100644 --- a/entc/integration/ent/comment/where.go +++ b/entc/integration/ent/comment/where.go @@ -156,7 +156,27 @@ func IDNotIn(ids ...string) predicate.Comment { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.Comment) predicate.Comment { + return predicate.CommentPerDialect( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + func(tr *dsl.Traversal) { + trs := make([]interface{}, 0, len(predicates)) + for _, p := range predicates { + t := __.New() + p(t) + trs = append(trs, t) + } + tr.Where(__.And(trs...)) + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.Comment) predicate.Comment { return predicate.CommentPerDialect( func(s *sql.Selector) { diff --git a/entc/integration/ent/fieldtype/where.go b/entc/integration/ent/fieldtype/where.go index e39c2a930..08d465378 100644 --- a/entc/integration/ent/fieldtype/where.go +++ b/entc/integration/ent/fieldtype/where.go @@ -2076,7 +2076,27 @@ func NullableInt64NotIn(vs ...int64) predicate.FieldType { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.FieldType) predicate.FieldType { + return predicate.FieldTypePerDialect( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + func(tr *dsl.Traversal) { + trs := make([]interface{}, 0, len(predicates)) + for _, p := range predicates { + t := __.New() + p(t) + trs = append(trs, t) + } + tr.Where(__.And(trs...)) + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.FieldType) predicate.FieldType { return predicate.FieldTypePerDialect( func(s *sql.Selector) { diff --git a/entc/integration/ent/file/where.go b/entc/integration/ent/file/where.go index ee99a473b..bc40d6bff 100644 --- a/entc/integration/ent/file/where.go +++ b/entc/integration/ent/file/where.go @@ -448,7 +448,27 @@ func NameHasSuffix(v string) predicate.File { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.File) predicate.File { + return predicate.FilePerDialect( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + func(tr *dsl.Traversal) { + trs := make([]interface{}, 0, len(predicates)) + for _, p := range predicates { + t := __.New() + p(t) + trs = append(trs, t) + } + tr.Where(__.And(trs...)) + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.File) predicate.File { return predicate.FilePerDialect( func(s *sql.Selector) { diff --git a/entc/integration/ent/group/where.go b/entc/integration/ent/group/where.go index 23de3337c..307df0fbb 100644 --- a/entc/integration/ent/group/where.go +++ b/entc/integration/ent/group/where.go @@ -939,7 +939,27 @@ func HasInfoWith(preds ...predicate.GroupInfo) predicate.Group { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.Group) predicate.Group { + return predicate.GroupPerDialect( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + func(tr *dsl.Traversal) { + trs := make([]interface{}, 0, len(predicates)) + for _, p := range predicates { + t := __.New() + p(t) + trs = append(trs, t) + } + tr.Where(__.And(trs...)) + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.Group) predicate.Group { return predicate.GroupPerDialect( func(s *sql.Selector) { diff --git a/entc/integration/ent/groupinfo/where.go b/entc/integration/ent/groupinfo/where.go index 332245e9b..7bdd1f608 100644 --- a/entc/integration/ent/groupinfo/where.go +++ b/entc/integration/ent/groupinfo/where.go @@ -489,7 +489,27 @@ func HasGroupsWith(preds ...predicate.Group) predicate.GroupInfo { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.GroupInfo) predicate.GroupInfo { + return predicate.GroupInfoPerDialect( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + func(tr *dsl.Traversal) { + trs := make([]interface{}, 0, len(predicates)) + for _, p := range predicates { + t := __.New() + p(t) + trs = append(trs, t) + } + tr.Where(__.And(trs...)) + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.GroupInfo) predicate.GroupInfo { return predicate.GroupInfoPerDialect( func(s *sql.Selector) { diff --git a/entc/integration/ent/node/where.go b/entc/integration/ent/node/where.go index 4715ebac3..0e7fef6b0 100644 --- a/entc/integration/ent/node/where.go +++ b/entc/integration/ent/node/where.go @@ -359,7 +359,27 @@ func HasNextWith(preds ...predicate.Node) predicate.Node { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.Node) predicate.Node { + return predicate.NodePerDialect( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + func(tr *dsl.Traversal) { + trs := make([]interface{}, 0, len(predicates)) + for _, p := range predicates { + t := __.New() + p(t) + trs = append(trs, t) + } + tr.Where(__.And(trs...)) + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.Node) predicate.Node { return predicate.NodePerDialect( func(s *sql.Selector) { diff --git a/entc/integration/ent/pet/where.go b/entc/integration/ent/pet/where.go index a310655bb..f586a6636 100644 --- a/entc/integration/ent/pet/where.go +++ b/entc/integration/ent/pet/where.go @@ -388,7 +388,27 @@ func HasOwnerWith(preds ...predicate.User) predicate.Pet { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.Pet) predicate.Pet { + return predicate.PetPerDialect( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + func(tr *dsl.Traversal) { + trs := make([]interface{}, 0, len(predicates)) + for _, p := range predicates { + t := __.New() + p(t) + trs = append(trs, t) + } + tr.Where(__.And(trs...)) + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.Pet) predicate.Pet { return predicate.PetPerDialect( func(s *sql.Selector) { diff --git a/entc/integration/ent/user/where.go b/entc/integration/ent/user/where.go index 7cb60d27f..d7b7d646d 100644 --- a/entc/integration/ent/user/where.go +++ b/entc/integration/ent/user/where.go @@ -1416,7 +1416,27 @@ func HasParentWith(preds ...predicate.User) predicate.User { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.User) predicate.User { + return predicate.UserPerDialect( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + func(tr *dsl.Traversal) { + trs := make([]interface{}, 0, len(predicates)) + for _, p := range predicates { + t := __.New() + p(t) + trs = append(trs, t) + } + tr.Where(__.And(trs...)) + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.User) predicate.User { return predicate.UserPerDialect( func(s *sql.Selector) { diff --git a/entc/integration/integration_test.go b/entc/integration/integration_test.go index ac9a57a5d..a1cc0b86e 100644 --- a/entc/integration/integration_test.go +++ b/entc/integration/integration_test.go @@ -100,6 +100,7 @@ var tests = []func(*testing.T, *ent.Client){ Paging, Charset, Relation, + Predicate, UniqueConstraint, O2OTwoTypes, O2OSameType, @@ -243,6 +244,37 @@ func Charset(t *testing.T, client *ent.Client) { require.Equal("Nati", f4.Name) } +func Predicate(t *testing.T, client *ent.Client) { + require := require.New(t) + ctx := context.Background() + f1 := client.File.Create().SetName("1").SetSize(10).SaveX(ctx) + f2 := client.File.Create().SetName("2").SetSize(20).SaveX(ctx) + f3 := client.File.Create().SetName("3").SetSize(30).SaveX(ctx) + f4 := client.File.Create().SetName("4").SetSize(40).SaveX(ctx) + files := client.File.Query(). + Where( + file.Or( + file.Name(f1.Name), + file.And(file.Name(f2.Name), file.Size(f2.Size)), + ), + ). + Order(ent.Asc(file.FieldName)). + AllX(ctx) + require.Equal(f1.Name, files[0].Name) + require.Equal(f2.Name, files[1].Name) + files = client.File.Query(). + Where( + file.Or( + file.Name(f4.Name), + file.And(file.Name(f3.Name), file.Size(f3.Size)), + ), + ). + Order(ent.Asc(file.FieldName)). + AllX(ctx) + require.Equal(f3.Name, files[0].Name) + require.Equal(f4.Name, files[1].Name) +} + func Relation(t *testing.T, client *ent.Client) { require := require.New(t) ctx := context.Background() diff --git a/entc/integration/migrate/entv1/user/where.go b/entc/integration/migrate/entv1/user/where.go index bfcf39617..bf45ddbf7 100644 --- a/entc/integration/migrate/entv1/user/where.go +++ b/entc/integration/migrate/entv1/user/where.go @@ -466,7 +466,18 @@ func AddressHasSuffix(v string) predicate.User { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.User) predicate.User { + return predicate.User( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.User) predicate.User { return predicate.User( func(s *sql.Selector) { diff --git a/entc/integration/migrate/entv2/group/where.go b/entc/integration/migrate/entv2/group/where.go index 3b778433c..8b3e4e73f 100644 --- a/entc/integration/migrate/entv2/group/where.go +++ b/entc/integration/migrate/entv2/group/where.go @@ -109,7 +109,18 @@ func IDNotIn(ids ...int) predicate.Group { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.Group) predicate.Group { + return predicate.Group( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.Group) predicate.Group { return predicate.Group( func(s *sql.Selector) { diff --git a/entc/integration/migrate/entv2/pet/where.go b/entc/integration/migrate/entv2/pet/where.go index 9994d6a75..a08027df0 100644 --- a/entc/integration/migrate/entv2/pet/where.go +++ b/entc/integration/migrate/entv2/pet/where.go @@ -109,7 +109,18 @@ func IDNotIn(ids ...int) predicate.Pet { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.Pet) predicate.Pet { + return predicate.Pet( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.Pet) predicate.Pet { return predicate.Pet( func(s *sql.Selector) { diff --git a/entc/integration/migrate/entv2/user/where.go b/entc/integration/migrate/entv2/user/where.go index 833cc6618..909873292 100644 --- a/entc/integration/migrate/entv2/user/where.go +++ b/entc/integration/migrate/entv2/user/where.go @@ -567,7 +567,18 @@ func BufferNotIn(vs ...[]byte) predicate.User { ) } -// Or groups list of predicates with the or operator between them. +// And groups list of predicates with the AND operator between them. +func And(predicates ...predicate.User) predicate.User { + return predicate.User( + func(s *sql.Selector) { + for _, p := range predicates { + p(s) + } + }, + ) +} + +// Or groups list of predicates with the OR operator between them. func Or(predicates ...predicate.User) predicate.User { return predicate.User( func(s *sql.Selector) {