@@ -15,19 +15,19 @@ private val NO_TRANSFORMATION: OutputErrorTransformer<*> = { it }
15
15
public sealed class OutputCollector <T > private constructor(
16
16
parent : OutputCollector <T >? = null ,
17
17
transformer : OutputErrorTransformer <T > = NO_TRANSFORMATION ,
18
- ) : ErrorCollector {
18
+ ) {
19
19
public companion object {
20
20
@JvmStatic
21
- public fun flag (): Flag = Flag ()
21
+ public fun flag (): OutputCollector < ValidationOutput . Flag > = Flag ()
22
22
23
23
@JvmStatic
24
- public fun basic (): Basic = Basic ()
24
+ public fun basic (): OutputCollector < ValidationOutput . Basic > = Basic ()
25
25
26
26
@JvmStatic
27
- public fun detailed (): Detailed = Detailed ()
27
+ public fun detailed (): OutputCollector < ValidationOutput . Detailed > = Detailed ()
28
28
29
29
@JvmStatic
30
- public fun verbose (): Verbose = Verbose ()
30
+ public fun verbose (): OutputCollector < ValidationOutput . Verbose > = Verbose ()
31
31
}
32
32
33
33
public abstract val output: T
@@ -62,6 +62,8 @@ public sealed class OutputCollector<T> private constructor(
62
62
63
63
internal open fun reportErrors () = Unit
64
64
65
+ internal abstract fun onError (error : ValidationError )
66
+
65
67
internal inline fun <OUT > use (block : OutputCollector <T >.() -> OUT ): OUT =
66
68
try {
67
69
block(this )
@@ -143,7 +145,7 @@ public sealed class OutputCollector<T> private constructor(
143
145
override fun childCollector (): OutputCollector <Nothing > = DelegateOutputCollector (errorCollector, this )
144
146
}
145
147
146
- public class Flag internal constructor (
148
+ private class Flag (
147
149
private val parent : Flag ? = null ,
148
150
transformer : OutputErrorTransformer <ValidationOutput .Flag > = NO_TRANSFORMATION ,
149
151
) : OutputCollector<ValidationOutput.Flag>(parent, transformer) {
@@ -186,7 +188,7 @@ public sealed class OutputCollector<T> private constructor(
186
188
override fun childCollector (): Flag = Flag (this )
187
189
}
188
190
189
- public class Basic internal constructor (
191
+ private class Basic (
190
192
private val parent : Basic ? = null ,
191
193
transformer : OutputErrorTransformer <ValidationOutput .Basic > = NO_TRANSFORMATION ,
192
194
) : OutputCollector<ValidationOutput.Basic>(parent, transformer) {
@@ -250,7 +252,7 @@ public sealed class OutputCollector<T> private constructor(
250
252
}
251
253
}
252
254
253
- public class Detailed internal constructor (
255
+ private class Detailed (
254
256
private val location : JsonPointer = JsonPointer .ROOT ,
255
257
private val keywordLocation : JsonPointer = JsonPointer .ROOT ,
256
258
private val parent : Detailed ? = null ,
@@ -343,7 +345,7 @@ public sealed class OutputCollector<T> private constructor(
343
345
}
344
346
}
345
347
346
- public class Verbose internal constructor (
348
+ private class Verbose (
347
349
private val location : JsonPointer = JsonPointer .ROOT ,
348
350
private val keywordLocation : JsonPointer = JsonPointer .ROOT ,
349
351
private val parent : Verbose ? = null ,
0 commit comments