Skip to content

Commit ca6b474

Browse files
committed
Use better Kotlin style
1 parent f37ac11 commit ca6b474

File tree

2 files changed

+48
-50
lines changed

2 files changed

+48
-50
lines changed

src/main/kotlin/org/mybatis/dynamic/sql/util/kotlin/AbstractQueryExpressionDSLExtensions.kt

Lines changed: 32 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -20,49 +20,49 @@ import org.mybatis.dynamic.sql.select.AbstractQueryExpressionDSL
2020
import org.mybatis.dynamic.sql.select.SelectModel
2121

2222
fun <T : AbstractQueryExpressionDSL<T, SelectModel>> AbstractQueryExpressionDSL<T, SelectModel>
23-
.join(table: SqlTable, collect: JoinReceiver): T {
24-
val collector = collect(JoinCollector())
25-
return join(table, collector.onJoinCriterion, collector.andJoinCriteria)
26-
}
23+
.join(table: SqlTable, collect: JoinReceiver): T =
24+
with(collect(JoinCollector())) {
25+
return join(table, onJoinCriterion, andJoinCriteria)
26+
}
2727

2828
fun <T : AbstractQueryExpressionDSL<T, SelectModel>> AbstractQueryExpressionDSL<T, SelectModel>
29-
.join(table: SqlTable, alias: String, collect: JoinReceiver): T {
30-
val collector = collect(JoinCollector())
31-
return join(table, alias, collector.onJoinCriterion, collector.andJoinCriteria)
32-
}
29+
.join(table: SqlTable, alias: String, collect: JoinReceiver): T =
30+
with(collect(JoinCollector())) {
31+
return join(table, alias, onJoinCriterion, andJoinCriteria)
32+
}
3333

3434
fun <T : AbstractQueryExpressionDSL<T, SelectModel>> AbstractQueryExpressionDSL<T, SelectModel>
35-
.fullJoin(table: SqlTable, collect: JoinReceiver): T {
36-
val collector = collect(JoinCollector())
37-
return fullJoin(table, collector.onJoinCriterion, collector.andJoinCriteria)
38-
}
35+
.fullJoin(table: SqlTable, collect: JoinReceiver): T =
36+
with(collect(JoinCollector())) {
37+
return fullJoin(table, onJoinCriterion, andJoinCriteria)
38+
}
3939

4040
fun <T : AbstractQueryExpressionDSL<T, SelectModel>> AbstractQueryExpressionDSL<T, SelectModel>
41-
.fullJoin(table: SqlTable, alias: String, collect: JoinReceiver): T {
42-
val collector = collect(JoinCollector())
43-
return fullJoin(table, alias, collector.onJoinCriterion, collector.andJoinCriteria)
44-
}
41+
.fullJoin(table: SqlTable, alias: String, collect: JoinReceiver): T =
42+
with(collect(JoinCollector())) {
43+
return fullJoin(table, alias, onJoinCriterion, andJoinCriteria)
44+
}
4545

4646
fun <T : AbstractQueryExpressionDSL<T, SelectModel>> AbstractQueryExpressionDSL<T, SelectModel>
47-
.leftJoin(table: SqlTable, collect: JoinReceiver): T {
48-
val collector = collect(JoinCollector())
49-
return leftJoin(table, collector.onJoinCriterion, collector.andJoinCriteria)
50-
}
47+
.leftJoin(table: SqlTable, collect: JoinReceiver): T =
48+
with(collect(JoinCollector())) {
49+
return leftJoin(table, onJoinCriterion, andJoinCriteria)
50+
}
5151

5252
fun <T : AbstractQueryExpressionDSL<T, SelectModel>> AbstractQueryExpressionDSL<T, SelectModel>
53-
.leftJoin(table: SqlTable, alias: String, collect: JoinReceiver): T {
54-
val collector = collect(JoinCollector())
55-
return leftJoin(table, alias, collector.onJoinCriterion, collector.andJoinCriteria)
56-
}
53+
.leftJoin(table: SqlTable, alias: String, collect: JoinReceiver): T =
54+
with(collect(JoinCollector())) {
55+
return leftJoin(table, alias, onJoinCriterion, andJoinCriteria)
56+
}
5757

5858
fun <T : AbstractQueryExpressionDSL<T, SelectModel>> AbstractQueryExpressionDSL<T, SelectModel>
59-
.rightJoin(table: SqlTable, collect: JoinReceiver): T {
60-
val collector = collect(JoinCollector())
61-
return rightJoin(table, collector.onJoinCriterion, collector.andJoinCriteria)
62-
}
59+
.rightJoin(table: SqlTable, collect: JoinReceiver): T =
60+
with(collect(JoinCollector())) {
61+
return rightJoin(table, onJoinCriterion, andJoinCriteria)
62+
}
6363

6464
fun <T : AbstractQueryExpressionDSL<T, SelectModel>> AbstractQueryExpressionDSL<T, SelectModel>
65-
.rightJoin(table: SqlTable, alias: String, collect: JoinReceiver): T {
66-
val collector = collect(JoinCollector())
67-
return rightJoin(table, alias, collector.onJoinCriterion, collector.andJoinCriteria)
68-
}
65+
.rightJoin(table: SqlTable, alias: String, collect: JoinReceiver): T =
66+
with(collect(JoinCollector())) {
67+
return rightJoin(table, alias, onJoinCriterion, andJoinCriteria)
68+
}

src/main/kotlin/org/mybatis/dynamic/sql/util/kotlin/CriteriaCollector.kt

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -38,17 +38,16 @@ class CriteriaCollector {
3838
fun <T> and(
3939
column: BindableColumn<T>,
4040
condition: VisitableCondition<T>,
41-
collect: CriteriaCollector.() -> CriteriaCollector
41+
collect: CriteriaReceiver
4242
) =
4343
apply {
44-
val collector = CriteriaCollector()
45-
collect(collector)
46-
val criterion: SqlCriterion<T> = SqlCriterion.withColumn(column)
47-
.withCondition(condition)
48-
.withSubCriteria(collector.criteria)
49-
.withConnector("and")
50-
.build()
51-
criteria.add(criterion)
44+
criteria.add(
45+
SqlCriterion.withColumn(column)
46+
.withCondition(condition)
47+
.withSubCriteria(collect(CriteriaCollector()).criteria)
48+
.withConnector("and")
49+
.build()
50+
)
5251
}
5352

5453
fun <T> or(column: BindableColumn<T>, condition: VisitableCondition<T>) =
@@ -64,16 +63,15 @@ class CriteriaCollector {
6463
fun <T> or(
6564
column: BindableColumn<T>,
6665
condition: VisitableCondition<T>,
67-
collect: CriteriaCollector.() -> CriteriaCollector
66+
collect: CriteriaReceiver
6867
) =
6968
apply {
70-
val collector = CriteriaCollector()
71-
collect(collector)
72-
val criterion: SqlCriterion<T> = SqlCriterion.withColumn(column)
73-
.withCondition(condition)
74-
.withSubCriteria(collector.criteria)
75-
.withConnector("or")
76-
.build()
77-
criteria.add(criterion)
69+
criteria.add(
70+
SqlCriterion.withColumn(column)
71+
.withCondition(condition)
72+
.withSubCriteria(collect(CriteriaCollector()).criteria)
73+
.withConnector("or")
74+
.build()
75+
)
7876
}
7977
}

0 commit comments

Comments
 (0)