From 18bbf1b5fb8e2b656191f631caf93bcf7e25a20c Mon Sep 17 00:00:00 2001 From: go-jet Date: Mon, 8 Jul 2019 10:48:03 +0200 Subject: [PATCH] Types rename. --- .gitignore | 1 + README.md | 12 +++--- alias.go | 2 +- cast.go | 2 +- clause.go | 42 +++++++++---------- cmd/{jetgen => jet}/main.go | 8 ++-- column.go | 8 ++-- delete_statement.go | 4 +- enum_value.go | 2 +- expression.go | 12 +++--- expression_old.go | 2 +- expression_table.go | 2 +- func_expression.go | 2 +- func_expression_test.go | 2 +- .../{postgresgen => postgres}/generator.go | 2 +- .../{postgresgen => postgres}/templates.go | 6 +-- group_by_clause.go | 2 +- insert_statement.go | 2 +- keyword.go | 2 +- literal_expression.go | 10 ++--- lock_statement.go | 2 +- operators.go | 2 +- order_by_clause.go | 4 +- projection.go | 4 +- select_statement.go | 8 ++-- set_statement.go | 6 +-- table.go | 4 +- test_utils.go | 6 +-- tests/init/init.go | 4 +- update_statement.go | 2 +- utils.go | 12 +++--- wiki/Generator.md | 16 +++---- 32 files changed, 98 insertions(+), 97 deletions(-) rename cmd/{jetgen => jet}/main.go (87%) rename generator/{postgresgen => postgres}/generator.go (99%) rename generator/{postgresgen => postgres}/templates.go (95%) diff --git a/.gitignore b/.gitignore index d84d410..731f340 100644 --- a/.gitignore +++ b/.gitignore @@ -13,6 +13,7 @@ # Idea .idea +*.iml # Test files gen diff --git a/README.md b/README.md index 213ad7b..faa41f4 100644 --- a/README.md +++ b/README.md @@ -34,10 +34,10 @@ Use the bellow command to install jet $ go get -u github.com/go-jet/jet ``` -Install jetgen to GOPATH bin folder. This will allow generating jet files from the command line. +Install jet to GOPATH bin folder. This will allow generating jet files from the command line. ```sh -go install github.com/go-jet/jet/cmd/jetgen +go install github.com/go-jet/jet/cmd/jet ``` Make sure GOPATH bin folder is added to the PATH environment variable. @@ -47,10 +47,10 @@ For this quick start example we will use sample _dvd rental_ database. Full data Schema diagram of interest for example can be found [here](./examples/quick-start/diagram.png). #### Generate sql builder and model files -To generate Go sql builder and Go data model from postgres database we need to call jetgen, and provide it with postgres connection parameters and destination folder for generated go files.\ +To generate Go sql builder and Go data model from postgres database we need to call jet, and provide it with postgres connection parameters and destination folder for generated go files.\ Assuming we are running local postgres database, with user `jet`, database `jetdb` and schema `dvds` we will use this command: ```sh -jetgen -host=localhost -port=5432 -user=jet -password=jet -dbname=jetdb -schema dvds -path ./gen +jet -host=localhost -port=5432 -user=jet -password=jet -dbname=jetdb -schema dvds -path ./gen ``` ```sh Connecting to postgres database: host=localhost port=5432 user=jet password=jet dbname=jetdb sslmode=disable @@ -63,7 +63,7 @@ Generating enum sql builder files... Generating enum model files... Done ``` -As jetgen command output suggest, jetgen will: +As jet command output suggest, jet will: - connect to postgres database and retrieve information about the tables and enums of `dvds` schema - delete everything in destination folder `./gen`, - and finally generate sql builder and model Go files for each schema tables and enums into destination folder `./gen`. @@ -475,7 +475,7 @@ Without Jet these bugs will have to be either caught by some test or by manual t ## Dependencies At the moment Jet dependence only of: - `github.com/google/uuid` _(Used for debug purposes)_ -- `github.com/lib/pq` _(Used by JetGen to read information about database schema)_ +- `github.com/lib/pq` _(Used by Jet to read information about database schema)_ To run the tests, additional dependencies are required: - `github.com/pkg/profile` diff --git a/alias.go b/alias.go index 38d7470..4f3b60a 100644 --- a/alias.go +++ b/alias.go @@ -20,7 +20,7 @@ func (a *alias) from(subQuery ExpressionTable) projection { return &column } -func (a *alias) serializeForProjection(statement statementType, out *queryData) error { +func (a *alias) serializeForProjection(statement statementType, out *sqlBuilder) error { err := a.expression.serialize(statement, out) if err != nil { diff --git a/cast.go b/cast.go index e950403..0f3a71f 100644 --- a/cast.go +++ b/cast.go @@ -42,7 +42,7 @@ func CAST(expression Expression) cast { } } -func (b *castImpl) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (b *castImpl) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { err := b.Expression.serialize(statement, out, options...) out.writeString("::" + b.castType) return err diff --git a/clause.go b/clause.go index c3928e7..d612079 100644 --- a/clause.go +++ b/clause.go @@ -16,7 +16,7 @@ const ( ) type clause interface { - serialize(statement statementType, out *queryData, options ...serializeOption) error + serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error } func contains(options []serializeOption, option serializeOption) bool { @@ -29,7 +29,7 @@ func contains(options []serializeOption, option serializeOption) bool { return false } -type queryData struct { +type sqlBuilder struct { buff bytes.Buffer args []interface{} @@ -50,11 +50,11 @@ const ( const defaultIdent = 5 -func (q *queryData) increaseIdent() { +func (q *sqlBuilder) increaseIdent() { q.ident += defaultIdent } -func (q *queryData) decreaseIdent() { +func (q *sqlBuilder) decreaseIdent() { if q.ident < defaultIdent { q.ident = 0 } @@ -62,14 +62,14 @@ func (q *queryData) decreaseIdent() { q.ident -= defaultIdent } -func (q *queryData) writeProjections(statement statementType, projections []projection) error { +func (q *sqlBuilder) writeProjections(statement statementType, projections []projection) error { q.increaseIdent() err := serializeProjectionList(statement, projections, q) q.decreaseIdent() return err } -func (q *queryData) writeFrom(statement statementType, table ReadableTable) error { +func (q *sqlBuilder) writeFrom(statement statementType, table ReadableTable) error { q.newLine() q.writeString("FROM") @@ -80,7 +80,7 @@ func (q *queryData) writeFrom(statement statementType, table ReadableTable) erro return err } -func (q *queryData) writeWhere(statement statementType, where Expression) error { +func (q *sqlBuilder) writeWhere(statement statementType, where Expression) error { q.newLine() q.writeString("WHERE") @@ -91,7 +91,7 @@ func (q *queryData) writeWhere(statement statementType, where Expression) error return err } -func (q *queryData) writeGroupBy(statement statementType, groupBy []groupByClause) error { +func (q *sqlBuilder) writeGroupBy(statement statementType, groupBy []groupByClause) error { q.newLine() q.writeString("GROUP BY") @@ -102,7 +102,7 @@ func (q *queryData) writeGroupBy(statement statementType, groupBy []groupByClaus return err } -func (q *queryData) writeOrderBy(statement statementType, orderBy []OrderByClause) error { +func (q *sqlBuilder) writeOrderBy(statement statementType, orderBy []OrderByClause) error { q.newLine() q.writeString("ORDER BY") @@ -113,7 +113,7 @@ func (q *queryData) writeOrderBy(statement statementType, orderBy []OrderByClaus return err } -func (q *queryData) writeHaving(statement statementType, having Expression) error { +func (q *sqlBuilder) writeHaving(statement statementType, having Expression) error { q.newLine() q.writeString("HAVING") @@ -124,7 +124,7 @@ func (q *queryData) writeHaving(statement statementType, having Expression) erro return err } -func (q *queryData) writeReturning(statement statementType, returning []projection) error { +func (q *sqlBuilder) writeReturning(statement statementType, returning []projection) error { if len(returning) == 0 { return nil } @@ -136,12 +136,12 @@ func (q *queryData) writeReturning(statement statementType, returning []projecti return q.writeProjections(statement, returning) } -func (q *queryData) newLine() { +func (q *sqlBuilder) newLine() { q.write([]byte{'\n'}) q.write(bytes.Repeat([]byte{' '}, q.ident)) } -func (q *queryData) write(data []byte) { +func (q *sqlBuilder) write(data []byte) { if len(data) == 0 { return } @@ -162,15 +162,15 @@ func isPostSeparator(b byte) bool { return b == ' ' || b == '.' || b == ',' || b == ')' || b == '\n' || b == ':' } -func (q *queryData) writeQuotedString(str string) { +func (q *sqlBuilder) writeQuotedString(str string) { q.writeString(`"` + str + `"`) } -func (q *queryData) writeString(str string) { +func (q *sqlBuilder) writeString(str string) { q.write([]byte(str)) } -func (q *queryData) writeIdentifier(name string) { +func (q *sqlBuilder) writeIdentifier(name string) { quoteWrap := name != strings.ToLower(name) || strings.ContainsAny(name, ". -") if quoteWrap { @@ -180,26 +180,26 @@ func (q *queryData) writeIdentifier(name string) { } } -func (q *queryData) writeByte(b byte) { +func (q *sqlBuilder) writeByte(b byte) { q.write([]byte{b}) } -func (q *queryData) finalize() (string, []interface{}) { +func (q *sqlBuilder) finalize() (string, []interface{}) { return q.buff.String() + ";\n", q.args } -func (q *queryData) insertConstantArgument(arg interface{}) { +func (q *sqlBuilder) insertConstantArgument(arg interface{}) { q.writeString(ArgToString(arg)) } -func (q *queryData) insertPreparedArgument(arg interface{}) { +func (q *sqlBuilder) insertPreparedArgument(arg interface{}) { q.args = append(q.args, arg) argPlaceholder := "$" + strconv.Itoa(len(q.args)) q.writeString(argPlaceholder) } -func (q *queryData) reset() { +func (q *sqlBuilder) reset() { q.buff.Reset() q.args = []interface{}{} } diff --git a/cmd/jetgen/main.go b/cmd/jet/main.go similarity index 87% rename from cmd/jetgen/main.go rename to cmd/jet/main.go index d156905..5b4a6ef 100644 --- a/cmd/jetgen/main.go +++ b/cmd/jet/main.go @@ -3,7 +3,7 @@ package main import ( "flag" "fmt" - "github.com/go-jet/jet/generator/postgresgen" + "github.com/go-jet/jet/generator/postgres" "os" ) @@ -39,12 +39,12 @@ func init() { func main() { if host == "" || port == "" || user == "" || dbName == "" || schemaName == "" { - fmt.Println("jetgen: required flag missing") + fmt.Println("jet: required flag missing") flag.Usage() os.Exit(-2) } - genData := postgresgen.DBConnection{ + genData := postgres.DBConnection{ Host: host, Port: port, User: user, @@ -56,7 +56,7 @@ func main() { SchemaName: schemaName, } - err := postgresgen.Generate(destDir, genData) + err := postgres.Generate(destDir, genData) if err != nil { fmt.Println(err.Error()) diff --git a/column.go b/column.go index e3af1a8..18695ed 100644 --- a/column.go +++ b/column.go @@ -61,7 +61,7 @@ func (c *columnImpl) defaultAlias() string { return c.name } -func (c *columnImpl) serializeForOrderBy(statement statementType, out *queryData) error { +func (c *columnImpl) serializeForOrderBy(statement statementType, out *sqlBuilder) error { if statement == set_statement { // set Statement (UNION, EXCEPT ...) can reference only select projections in order by clause out.writeString(`"` + c.defaultAlias() + `"`) //always quote @@ -72,7 +72,7 @@ func (c *columnImpl) serializeForOrderBy(statement statementType, out *queryData return c.serialize(statement, out) } -func (c columnImpl) serializeForProjection(statement statementType, out *queryData) error { +func (c columnImpl) serializeForProjection(statement statementType, out *sqlBuilder) error { err := c.serialize(statement, out) if err != nil { @@ -84,7 +84,7 @@ func (c columnImpl) serializeForProjection(statement statementType, out *queryDa return nil } -func (c columnImpl) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (c columnImpl) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { if c.subQuery != nil { out.writeIdentifier(c.subQuery.Alias()) @@ -119,7 +119,7 @@ func (cl ColumnList) from(subQuery ExpressionTable) projection { return newProjectionList } -func (cl ColumnList) serializeForProjection(statement statementType, out *queryData) error { +func (cl ColumnList) serializeForProjection(statement statementType, out *sqlBuilder) error { projections := columnListToProjectionList(cl) err := serializeProjectionList(statement, projections, out) diff --git a/delete_statement.go b/delete_statement.go index 882fb15..feefefc 100644 --- a/delete_statement.go +++ b/delete_statement.go @@ -37,7 +37,7 @@ func (d *deleteStatementImpl) RETURNING(projections ...projection) DeleteStateme return d } -func (d *deleteStatementImpl) serializeImpl(out *queryData) error { +func (d *deleteStatementImpl) serializeImpl(out *sqlBuilder) error { if d == nil { return errors.New("delete statement is nil") } @@ -68,7 +68,7 @@ func (d *deleteStatementImpl) serializeImpl(out *queryData) error { } func (d *deleteStatementImpl) Sql() (query string, args []interface{}, err error) { - queryData := &queryData{} + queryData := &sqlBuilder{} err = d.serializeImpl(queryData) diff --git a/enum_value.go b/enum_value.go index f6485ba..49fe798 100644 --- a/enum_value.go +++ b/enum_value.go @@ -15,7 +15,7 @@ func NewEnumValue(name string) StringExpression { return enumValue } -func (e enumValue) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (e enumValue) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { out.insertConstantArgument(e.name) return nil } diff --git a/expression.go b/expression.go index 7872e02..2faea0f 100644 --- a/expression.go +++ b/expression.go @@ -66,15 +66,15 @@ func (e *expressionInterfaceImpl) DESC() OrderByClause { return newOrderByClause(e.parent, false) } -func (e *expressionInterfaceImpl) serializeForGroupBy(statement statementType, out *queryData) error { +func (e *expressionInterfaceImpl) serializeForGroupBy(statement statementType, out *sqlBuilder) error { return e.parent.serialize(statement, out, noWrap) } -func (e *expressionInterfaceImpl) serializeForProjection(statement statementType, out *queryData) error { +func (e *expressionInterfaceImpl) serializeForProjection(statement statementType, out *sqlBuilder) error { return e.parent.serialize(statement, out, noWrap) } -func (e *expressionInterfaceImpl) serializeForOrderBy(statement statementType, out *queryData) error { +func (e *expressionInterfaceImpl) serializeForOrderBy(statement statementType, out *sqlBuilder) error { return e.parent.serialize(statement, out, noWrap) } @@ -94,7 +94,7 @@ func newBinaryExpression(lhs, rhs Expression, operator string) binaryOpExpressio return binaryExpression } -func (c *binaryOpExpression) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (c *binaryOpExpression) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { if c == nil { return errors.New("binary Expression is nil") } @@ -143,7 +143,7 @@ func newPrefixExpression(expression Expression, operator string) prefixOpExpress return prefixExpression } -func (p *prefixOpExpression) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (p *prefixOpExpression) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { if p == nil { return errors.New("Prefix Expression is nil.") } @@ -175,7 +175,7 @@ func newPostfixOpExpression(expression Expression, operator string) postfixOpExp return postfixOpExpression } -func (p *postfixOpExpression) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (p *postfixOpExpression) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { if p == nil { return errors.New("Postifx operator Expression is nil.") } diff --git a/expression_old.go b/expression_old.go index 6bd6a98..7e8c19c 100644 --- a/expression_old.go +++ b/expression_old.go @@ -12,7 +12,7 @@ type intervalExpression struct { const intervalSep = ":" -func (c *intervalExpression) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (c *intervalExpression) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { out.writeString("INTERVAL '") duration := c.duration diff --git a/expression_table.go b/expression_table.go index 7b1a750..3e62d3f 100644 --- a/expression_table.go +++ b/expression_table.go @@ -44,7 +44,7 @@ func (e *expressionTableImpl) AllColumns() ProjectionList { return e.projections } -func (e *expressionTableImpl) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (e *expressionTableImpl) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { if e == nil { return errors.New("Expression table is nil. ") } diff --git a/func_expression.go b/func_expression.go index 6e618e3..d3264b1 100644 --- a/func_expression.go +++ b/func_expression.go @@ -25,7 +25,7 @@ func newFunc(name string, expressions []Expression, parent Expression) *funcExpr return funcExp } -func (f *funcExpressionImpl) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (f *funcExpressionImpl) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { if f == nil { return errors.New("Function expressions is nil. ") } diff --git a/func_expression_test.go b/func_expression_test.go index 46e3bf5..d5d78e9 100644 --- a/func_expression_test.go +++ b/func_expression_test.go @@ -160,7 +160,7 @@ func TestFuncLEAST(t *testing.T) { func TestInterval(t *testing.T) { query := INTERVAL(`6 years 5 months 4 days 3 hours 2 minutes 1 second`) - queryData := &queryData{} + queryData := &sqlBuilder{} err := query.serialize(select_statement, queryData) diff --git a/generator/postgresgen/generator.go b/generator/postgres/generator.go similarity index 99% rename from generator/postgresgen/generator.go rename to generator/postgres/generator.go index a291ac8..4ba03e9 100644 --- a/generator/postgresgen/generator.go +++ b/generator/postgres/generator.go @@ -1,4 +1,4 @@ -package postgresgen +package postgres import ( "database/sql" diff --git a/generator/postgresgen/templates.go b/generator/postgres/templates.go similarity index 95% rename from generator/postgresgen/templates.go rename to generator/postgres/templates.go index 3e89d59..c49e1fc 100644 --- a/generator/postgresgen/templates.go +++ b/generator/postgres/templates.go @@ -1,14 +1,14 @@ -package postgresgen +package postgres var autoGenWarningTemplate = ` // -// Code generated by jetgen DO NOT EDIT. +// Code generated by go-jet DO NOT EDIT. // Generated at {{now}} // // WARNING: Changes to this file may cause incorrect behavior and will be lost // if the code is regenerated // -// Licence under github.com/go-jet/jet/LICENSE +// Licence under: https://github.com/go-jet/jet/blob/master/LICENSE // ` diff --git a/group_by_clause.go b/group_by_clause.go index ea4799f..4510b63 100644 --- a/group_by_clause.go +++ b/group_by_clause.go @@ -1,7 +1,7 @@ package jet type groupByClause interface { - serializeForGroupBy(statement statementType, out *queryData) error + serializeForGroupBy(statement statementType, out *sqlBuilder) error } // TODO: GROUPING SETS, CUBE, and ROLLUP diff --git a/insert_statement.go b/insert_statement.go index 0dc58a6..fe23daf 100644 --- a/insert_statement.go +++ b/insert_statement.go @@ -76,7 +76,7 @@ func (i *insertStatementImpl) DebugSql() (query string, err error) { } func (i *insertStatementImpl) Sql() (sql string, args []interface{}, err error) { - queryData := &queryData{} + queryData := &sqlBuilder{} queryData.newLine() queryData.writeString("INSERT INTO") diff --git a/keyword.go b/keyword.go index 6667f95..6f363cf 100644 --- a/keyword.go +++ b/keyword.go @@ -11,7 +11,7 @@ var ( type keywordClause string -func (k keywordClause) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (k keywordClause) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { out.writeString(string(k)) return nil diff --git a/literal_expression.go b/literal_expression.go index 521ce44..9e8becf 100644 --- a/literal_expression.go +++ b/literal_expression.go @@ -23,7 +23,7 @@ func constLiteral(value interface{}) *literalExpression { return exp } -func (l literalExpression) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (l literalExpression) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { if l.constant { out.insertConstantArgument(l.value) } else { @@ -189,7 +189,7 @@ func newNullLiteral() Expression { return nullExpression } -func (n *nullLiteral) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (n *nullLiteral) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { out.writeString("NULL") return nil } @@ -207,7 +207,7 @@ func newStarLiteral() Expression { return starExpression } -func (n *starLiteral) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (n *starLiteral) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { out.writeString("*") return nil } @@ -219,7 +219,7 @@ type wrap struct { expressions []Expression } -func (n *wrap) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (n *wrap) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { out.writeString("(") err := serializeExpressionList(statement, n.expressions, ", ", out) out.writeString(")") @@ -240,7 +240,7 @@ type rawExpression struct { raw string } -func (n *rawExpression) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (n *rawExpression) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { out.writeString(n.raw) return nil } diff --git a/lock_statement.go b/lock_statement.go index 705a834..a5e9424 100644 --- a/lock_statement.go +++ b/lock_statement.go @@ -62,7 +62,7 @@ func (l *lockStatementImpl) Sql() (query string, args []interface{}, err error) return "", nil, errors.New("There is no table selected to be locked. ") } - out := &queryData{} + out := &sqlBuilder{} out.newLine() out.writeString("LOCK TABLE") diff --git a/operators.go b/operators.go index acdd3fd..c1b567c 100644 --- a/operators.go +++ b/operators.go @@ -100,7 +100,7 @@ func (c *caseOperatorImpl) ELSE(els Expression) CaseOperatorExpression { return c } -func (c *caseOperatorImpl) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (c *caseOperatorImpl) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { if c == nil { return errors.New("Case Expression is nil. ") } diff --git a/order_by_clause.go b/order_by_clause.go index 1dfd4fe..2184dae 100644 --- a/order_by_clause.go +++ b/order_by_clause.go @@ -3,7 +3,7 @@ package jet import "errors" type OrderByClause interface { - serializeForOrderBy(statement statementType, out *queryData) error + serializeForOrderBy(statement statementType, out *sqlBuilder) error } type orderByClauseImpl struct { @@ -11,7 +11,7 @@ type orderByClauseImpl struct { ascent bool } -func (o *orderByClauseImpl) serializeForOrderBy(statement statementType, out *queryData) error { +func (o *orderByClauseImpl) serializeForOrderBy(statement statementType, out *sqlBuilder) error { if o.expression == nil { return errors.New("nil orderBy by clause.") } diff --git a/projection.go b/projection.go index 9468e5b..0a3c202 100644 --- a/projection.go +++ b/projection.go @@ -1,7 +1,7 @@ package jet type projection interface { - serializeForProjection(statement statementType, out *queryData) error + serializeForProjection(statement statementType, out *sqlBuilder) error from(subQuery ExpressionTable) projection } @@ -18,7 +18,7 @@ func (cl ProjectionList) from(subQuery ExpressionTable) projection { return newProjectionList } -func (cl ProjectionList) serializeForProjection(statement statementType, out *queryData) error { +func (cl ProjectionList) serializeForProjection(statement statementType, out *sqlBuilder) error { err := serializeProjectionList(statement, cl, out) if err != nil { diff --git a/select_statement.go b/select_statement.go index 2174a7b..5207d19 100644 --- a/select_statement.go +++ b/select_statement.go @@ -153,7 +153,7 @@ func (s *selectStatementImpl) projections() []projection { return s.projectionList } -func (s *selectStatementImpl) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (s *selectStatementImpl) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { if s == nil { return errors.New("Select expression is nil. ") } @@ -173,7 +173,7 @@ func (s *selectStatementImpl) serialize(statement statementType, out *queryData, return nil } -func (s *selectStatementImpl) serializeImpl(out *queryData) error { +func (s *selectStatementImpl) serializeImpl(out *sqlBuilder) error { if s == nil { return errors.New("Select expression is nil. ") } @@ -259,7 +259,7 @@ func (s *selectStatementImpl) serializeImpl(out *queryData) error { } func (s *selectStatementImpl) Sql() (query string, args []interface{}, err error) { - queryData := queryData{} + queryData := sqlBuilder{} err = s.serializeImpl(&queryData) @@ -326,7 +326,7 @@ func (s *selectLockImpl) SKIP_LOCKED() SelectLock { return s } -func (s *selectLockImpl) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (s *selectLockImpl) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { out.writeString(s.lockStrength) if s.noWait { diff --git a/set_statement.go b/set_statement.go index e28f0ec..0eea405 100644 --- a/set_statement.go +++ b/set_statement.go @@ -69,7 +69,7 @@ func (s *setStatementImpl) projections() []projection { return []projection{} } -func (s *setStatementImpl) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (s *setStatementImpl) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { if s == nil { return errors.New("Set expression is nil. ") } @@ -96,7 +96,7 @@ func (s *setStatementImpl) serialize(statement statementType, out *queryData, op return nil } -func (s *setStatementImpl) serializeImpl(out *queryData) error { +func (s *setStatementImpl) serializeImpl(out *sqlBuilder) error { if s == nil { return errors.New("Set expression is nil. ") } @@ -158,7 +158,7 @@ func (s *setStatementImpl) serializeImpl(out *queryData) error { } func (s *setStatementImpl) Sql() (query string, args []interface{}, err error) { - queryData := &queryData{} + queryData := &sqlBuilder{} err = s.serializeImpl(queryData) diff --git a/table.go b/table.go index 8d469d6..7624a71 100644 --- a/table.go +++ b/table.go @@ -168,7 +168,7 @@ func (t *tableImpl) columns() []column { return ret } -func (t *tableImpl) serialize(statement statementType, out *queryData, options ...serializeOption) error { +func (t *tableImpl) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) error { if t == nil { return errors.New("tableImpl is nil. ") } @@ -235,7 +235,7 @@ func (t *joinTable) columns() []column { return append(t.lhs.columns(), t.rhs.columns()...) } -func (t *joinTable) serialize(statement statementType, out *queryData, options ...serializeOption) (err error) { +func (t *joinTable) serialize(statement statementType, out *sqlBuilder, options ...serializeOption) (err error) { if t == nil { return errors.New("Join table is nil. ") } diff --git a/test_utils.go b/test_utils.go index 30d5050..22d4f7d 100644 --- a/test_utils.go +++ b/test_utils.go @@ -52,7 +52,7 @@ var table3 = NewTable( table3StrCol) func assertClauseSerialize(t *testing.T, clause clause, query string, args ...interface{}) { - out := queryData{} + out := sqlBuilder{} err := clause.serialize(select_statement, &out) assert.NilError(t, err) @@ -62,7 +62,7 @@ func assertClauseSerialize(t *testing.T, clause clause, query string, args ...in } func assertClauseSerializeErr(t *testing.T, clause clause, errString string) { - out := queryData{} + out := sqlBuilder{} err := clause.serialize(select_statement, &out) //fmt.Println(out.buff.String()) @@ -71,7 +71,7 @@ func assertClauseSerializeErr(t *testing.T, clause clause, errString string) { } func assertProjectionSerialize(t *testing.T, projection projection, query string, args ...interface{}) { - out := queryData{} + out := sqlBuilder{} err := projection.serializeForProjection(select_statement, &out) assert.NilError(t, err) diff --git a/tests/init/init.go b/tests/init/init.go index bf16bb1..f0436d1 100644 --- a/tests/init/init.go +++ b/tests/init/init.go @@ -3,7 +3,7 @@ package main import ( "database/sql" "fmt" - "github.com/go-jet/jet/generator/postgresgen" + "github.com/go-jet/jet/generator/postgres" "github.com/go-jet/jet/tests/dbconfig" "io/ioutil" ) @@ -33,7 +33,7 @@ func main() { _, err = db.Exec(string(testSampleSql)) - err = postgresgen.Generate("./.gentestdata", postgresgen.DBConnection{ + err = postgres.Generate("./.gentestdata", postgres.DBConnection{ Host: dbconfig.Host, Port: "5432", User: dbconfig.User, diff --git a/update_statement.go b/update_statement.go index b93b25b..3d1774a 100644 --- a/update_statement.go +++ b/update_statement.go @@ -56,7 +56,7 @@ func (u *updateStatementImpl) RETURNING(projections ...projection) UpdateStateme } func (u *updateStatementImpl) Sql() (sql string, args []interface{}, err error) { - out := &queryData{} + out := &sqlBuilder{} out.newLine() out.writeString("UPDATE") diff --git a/utils.go b/utils.go index 27c814e..725a9d2 100644 --- a/utils.go +++ b/utils.go @@ -7,7 +7,7 @@ import ( "strings" ) -func serializeOrderByClauseList(statement statementType, orderByClauses []OrderByClause, out *queryData) error { +func serializeOrderByClauseList(statement statementType, orderByClauses []OrderByClause, out *sqlBuilder) error { for i, value := range orderByClauses { if i > 0 { @@ -24,7 +24,7 @@ func serializeOrderByClauseList(statement statementType, orderByClauses []OrderB return nil } -func serializeGroupByClauseList(statement statementType, clauses []groupByClause, out *queryData) (err error) { +func serializeGroupByClauseList(statement statementType, clauses []groupByClause, out *sqlBuilder) (err error) { for i, c := range clauses { if i > 0 { @@ -43,7 +43,7 @@ func serializeGroupByClauseList(statement statementType, clauses []groupByClause return nil } -func serializeClauseList(statement statementType, clauses []clause, out *queryData) (err error) { +func serializeClauseList(statement statementType, clauses []clause, out *sqlBuilder) (err error) { for i, c := range clauses { if i > 0 { @@ -62,7 +62,7 @@ func serializeClauseList(statement statementType, clauses []clause, out *queryDa return nil } -func serializeExpressionList(statement statementType, expressions []Expression, separator string, out *queryData) error { +func serializeExpressionList(statement statementType, expressions []Expression, separator string, out *sqlBuilder) error { for i, value := range expressions { if i > 0 { @@ -79,7 +79,7 @@ func serializeExpressionList(statement statementType, expressions []Expression, return nil } -func serializeProjectionList(statement statementType, projections []projection, out *queryData) error { +func serializeProjectionList(statement statementType, projections []projection, out *sqlBuilder) error { for i, col := range projections { if i > 0 { out.writeString(",") @@ -98,7 +98,7 @@ func serializeProjectionList(statement statementType, projections []projection, return nil } -func serializeColumnNames(columns []column, out *queryData) error { +func serializeColumnNames(columns []column, out *sqlBuilder) error { for i, col := range columns { if i > 0 { out.writeString(", ") diff --git a/wiki/Generator.md b/wiki/Generator.md index e5052e4..1c9237c 100644 --- a/wiki/Generator.md +++ b/wiki/Generator.md @@ -6,18 +6,18 @@ This files can be generated in two ways: #### 1) Generating from command line -Install jetgen to GOPATH bin folder. This will allow generating jet files from the command line. +Install jet to GOPATH bin folder. This will allow generating jet files from the command line. ```sh -go install github.com/go-jet/jet/cmd/jetgen +go install github.com/go-jet/jet/cmd/jet ``` Make sure GOPATH bin folder is added to the PATH environment variable. -Test jetgen can be found in the PATH. +Test jet can be found in the PATH. ```sh -jetgen -h -Usage of jetgen: +jet -h +Usage of jet: -host string Database host path (Example: localhost) -port string @@ -40,7 +40,7 @@ Usage of jetgen: Now to generate sample database: ```sh -jetgen -host=localhost -port=5432 -user=jet -password=jet -dbname=jetdb -schema dvds -path ./gen +jet -host=localhost -port=5432 -user=jet -password=jet -dbname=jetdb -schema dvds -path ./gen ``` ```sh Connecting to postgres database: host=localhost port=5432 user=jet password=jet dbname=jetdb sslmode=disable @@ -56,11 +56,11 @@ Done #### 2) Generating from code ``` -import "github.com/go-jet/jet/generator/postgresgen" +import "github.com/go-jet/jet/generator/postgres" ... -err = postgresgen.Generate("./gen", postgresgen.DBConnection{ +err = postgres.Generate("./gen", postgres.DBConnection{ Host: "localhost", Port: "5432", User: "jet",