File tree Expand file tree Collapse file tree 9 files changed +22
-24
lines changed
kotlinEnumSumOfProductDocSpec
kotlinEnumSumOfProductSpec
kotlinEnumSumOfProductWithLinkEnumInterfaceSpec
kotlinEnumSumOfProductWithTaggedFlatObjectStyleSpec
kotlinEnumSumOfProductWithTaggedObjectAndNonConcreteCasesSpec
kotlinEnumSumOfProductWithTaggedObjectAndSingleNullarySpec
kotlinEnumSumOfProductWithTaggedObjectStyleSpec
kotlinSumOfProductWithTypeParameterSpec Expand file tree Collapse file tree 9 files changed +22
-24
lines changed Original file line number Diff line number Diff line change 1
1
/** Top-level documentation describing [Enum]. */
2
2
@JsonClassDiscriminator("tag")
3
3
@Serializable
4
- sealed class Enum : Parcelable {
4
+ sealed interface Enum : Parcelable {
5
5
/** A constructor. */
6
6
@Parcelize
7
7
@Serializable
8
8
@SerialName("dataCons0")
9
- data class DataCons0(val contents: Record0) : Enum()
9
+ data class DataCons0(val contents: Record0) : Enum
10
10
11
11
/** Another constructor. */
12
12
@Parcelize
13
13
@Serializable
14
14
@SerialName("dataCons1")
15
- data class DataCons1(val contents: Record1) : Enum()
15
+ data class DataCons1(val contents: Record1) : Enum
16
16
}
Original file line number Diff line number Diff line change 1
1
@Serializable
2
- sealed class Enum : Parcelable
2
+ sealed interface Enum : Parcelable
Original file line number Diff line number Diff line change 1
1
@Serializable(with = Enum1Serializer::class)
2
- sealed class Enum : Parcelable
2
+ sealed interface Enum : Parcelable
Original file line number Diff line number Diff line change 1
1
@Serializable
2
- sealed class Enum : Parcelable
2
+ sealed interface Enum : Parcelable
Original file line number Diff line number Diff line change 1
1
@JsonClassDiscriminator("tag")
2
2
@Serializable
3
- sealed class Enum : Parcelable {
3
+ sealed interface Enum : Parcelable {
4
4
@Parcelize
5
5
@Serializable
6
6
@SerialName("dataCons0")
7
- data class DataCons0(val contents: List<Record0>) : Enum()
7
+ data class DataCons0(val contents: List<Record0>) : Enum
8
8
9
9
@Parcelize
10
10
@Serializable
11
11
@SerialName("dataCons1")
12
- data class DataCons1(val contents: List<Record1>) : Enum()
12
+ data class DataCons1(val contents: List<Record1>) : Enum
13
13
}
Original file line number Diff line number Diff line change 1
1
@JsonClassDiscriminator("tag")
2
2
@Serializable
3
- sealed class Enum : Parcelable {
3
+ sealed interface Enum : Parcelable {
4
4
@Parcelize
5
5
@Serializable
6
6
@SerialName("dataCons0")
7
- data class DataCons0(val contents: Record0) : Enum()
7
+ data class DataCons0(val contents: Record0) : Enum
8
8
9
9
@Parcelize
10
10
@Serializable
11
11
@SerialName("dataCons1")
12
- data object DataCons1 : Enum()
12
+ data object DataCons1 : Enum
13
13
}
Original file line number Diff line number Diff line change 1
1
@JsonClassDiscriminator("tag")
2
2
@Serializable
3
- sealed class Enum : Parcelable {
3
+ sealed interface Enum : Parcelable {
4
4
@Parcelize
5
5
@Serializable
6
6
@SerialName("dataCons0")
7
- data class DataCons0(val contents: Record0) : Enum()
7
+ data class DataCons0(val contents: Record0) : Enum
8
8
9
9
@Parcelize
10
10
@Serializable
11
11
@SerialName("dataCons1")
12
- data class DataCons1(val contents: Record1) : Enum()
12
+ data class DataCons1(val contents: Record1) : Enum
13
13
14
14
@Parcelize
15
15
@Serializable
16
16
@SerialName("dataCons2")
17
- data object DataCons2 : Enum()
17
+ data object DataCons2 : Enum
18
18
}
Original file line number Diff line number Diff line change 1
1
@JsonClassDiscriminator("direction")
2
2
@Serializable
3
- sealed class CursorInput<A> {
3
+ sealed interface CursorInput<A> {
4
4
@Serializable
5
5
@SerialName("nextPage")
6
- data class NextPage<A>(val key: A?) : CursorInput<A>()
6
+ data class NextPage<A>(val key: A?) : CursorInput<A>
7
7
8
8
@Serializable
9
9
@SerialName("previousPage")
10
- data class PreviousPage<A>(val key: A) : CursorInput<A>()
10
+ data class PreviousPage<A>(val key: A) : CursorInput<A>
11
11
12
12
@Serializable
13
13
@SerialName("unknown")
14
- data object Unknown : CursorInput<Nothing>()
14
+ data object Unknown : CursorInput<Nothing>
15
15
}
Original file line number Diff line number Diff line change @@ -247,7 +247,6 @@ prettyTaggedObject parentName tyVars anns ifaces cases indents SumOfProductEncod
247
247
++ prettyMoatType caseTy
248
248
++ " ) : "
249
249
++ parentTypeHeader
250
- ++ " ()"
251
250
EnumCase caseNm caseDoc [] ->
252
251
prettyTypeDoc indents caseDoc []
253
252
++ prettyAnnotations (Just caseNm) indents anns
@@ -256,7 +255,6 @@ prettyTaggedObject parentName tyVars anns ifaces cases indents SumOfProductEncod
256
255
++ objectCaseTypeHeader caseNm
257
256
++ " : "
258
257
++ objectParentTypeHeader
259
- ++ " ()"
260
258
EnumCase caseNm _ _ ->
261
259
error $
262
260
" prettyTaggedObject: The data constructor "
@@ -326,7 +324,7 @@ prettyEnum doc anns ifaces name tyVars cases sop@SumOfProductEncodingOptions {..
326
324
TaggedFlatObjectStyle ->
327
325
prettyTypeDoc noIndent doc []
328
326
++ prettyAnnotations Nothing noIndent (dontAddParcelizeToSealedClasses anns)
329
- ++ " sealed class "
327
+ ++ " sealed interface "
330
328
++ classTyp
331
329
++ prettyInterfaces ifaces
332
330
TaggedObjectStyle ->
@@ -335,7 +333,7 @@ prettyEnum doc anns ifaces name tyVars cases sop@SumOfProductEncodingOptions {..
335
333
Nothing
336
334
noIndent
337
335
(dontAddParcelizeToSealedClasses (sumAnnotations ++ anns))
338
- ++ " sealed class "
336
+ ++ " sealed interface "
339
337
++ classTyp
340
338
++ prettyInterfaces ifaces
341
339
++ " {\n "
You can’t perform that action at this time.
0 commit comments