This commit is contained in:
lukaseder 2018-02-12 15:54:14 +01:00
parent 685a2924e2
commit cb64b2b589
2 changed files with 31 additions and 17 deletions

View File

@ -206,7 +206,7 @@ public class Generate implements Serializable
}
/**
* Generate implict join path constructors on generated tables for outgoing foreign key relationships (to-one relationships)
* Generate implicit join path constructors on generated tables for outgoing foreign key relationships (to-one relationships)
*
* @return
* possible object is

View File

@ -391,6 +391,10 @@ final class ParserImpl implements Parser {
// Top level parsing
// -----------------------------------------------------------------------------------------------------------------
private final ParserContext ctx(String sql, Object... bindings) {
return new ParserContext(dsl, meta, metaLookups, sql, bindings);
}
@Override
public final Queries parse(String sql) {
return parse(sql, new Object[0]);
@ -398,7 +402,7 @@ final class ParserImpl implements Parser {
@Override
public final Queries parse(String sql, Object... bindings) {
ParserContext ctx = new ParserContext(dsl, sql, bindings);
ParserContext ctx = ctx(sql, bindings);
List<Query> result = new ArrayList<Query>();
Query query;
@ -425,7 +429,7 @@ final class ParserImpl implements Parser {
@Override
public final Query parseQuery(String sql, Object... bindings) {
ParserContext ctx = new ParserContext(dsl, sql, bindings);
ParserContext ctx = ctx(sql, bindings);
Query result = parseQuery(ctx, false);
ctx.done("Unexpected content after end of query input");
@ -439,7 +443,7 @@ final class ParserImpl implements Parser {
@Override
public final ResultQuery<?> parseResultQuery(String sql, Object... bindings) {
ParserContext ctx = new ParserContext(dsl, sql, bindings);
ParserContext ctx = ctx(sql, bindings);
ResultQuery<?> result = (ResultQuery<?>) parseQuery(ctx, true);
ctx.done("Unexpected content after end of query input");
@ -453,7 +457,7 @@ final class ParserImpl implements Parser {
@Override
public final Table<?> parseTable(String sql, Object... bindings) {
ParserContext ctx = new ParserContext(dsl, sql, bindings);
ParserContext ctx = ctx(sql, bindings);
Table<?> result = parseTable(ctx);
ctx.done("Unexpected content after end of table input");
@ -467,7 +471,7 @@ final class ParserImpl implements Parser {
@Override
public final Field<?> parseField(String sql, Object... bindings) {
ParserContext ctx = new ParserContext(dsl, sql, bindings);
ParserContext ctx = ctx(sql, bindings);
Field<?> result = parseField(ctx);
ctx.done("Unexpected content after end of field input");
@ -481,7 +485,7 @@ final class ParserImpl implements Parser {
@Override
public final Row parseRow(String sql, Object... bindings) {
ParserContext ctx = new ParserContext(dsl, sql, bindings);
ParserContext ctx = ctx(sql, bindings);
RowN result = parseRow(ctx);
ctx.done("Unexpected content after end of row input");
@ -495,7 +499,7 @@ final class ParserImpl implements Parser {
@Override
public final Condition parseCondition(String sql, Object... bindings) {
ParserContext ctx = new ParserContext(dsl, sql, bindings);
ParserContext ctx = ctx(sql, bindings);
Condition result = parseCondition(ctx);
ctx.done("Unexpected content after end of condition input");
@ -509,7 +513,7 @@ final class ParserImpl implements Parser {
@Override
public final Name parseName(String sql, Object... bindings) {
ParserContext ctx = new ParserContext(dsl, sql, bindings);
ParserContext ctx = ctx(sql, bindings);
Name result = parseName(ctx);
ctx.done("Unexpected content after end of name input");
@ -7088,16 +7092,26 @@ final class ParserImpl implements Parser {
}
static final class ParserContext {
final DSLContext dsl;
final String sqlString;
final char[] sql;
int position = 0;
final Object[] bindings;
int bindIndex = 0;
String delimiter = ";";
final DSLContext dsl;
final Meta meta;
final ParseWithMetaLookups metaLookups;
final String sqlString;
final char[] sql;
int position = 0;
final Object[] bindings;
int bindIndex = 0;
String delimiter = ";";
ParserContext(DSLContext dsl, String sqlString, Object[] bindings) {
ParserContext(
DSLContext dsl,
Meta meta,
ParseWithMetaLookups metaLookups,
String sqlString,
Object[] bindings
) {
this.dsl = dsl;
this.meta = meta;
this.metaLookups = metaLookups;
this.sqlString = sqlString;
this.sql = sqlString.toCharArray();
this.bindings = bindings;