Skip to content

Commit 96fd095

Browse files
committed
Created custom serializers for TextContent models so that the type discriminator is always included in the serialized format
1 parent 47721ca commit 96fd095

File tree

8 files changed

+2328
-417
lines changed

8 files changed

+2328
-417
lines changed

kotlin-js-store/yarn.lock

Lines changed: 1955 additions & 270 deletions
Large diffs are not rendered by default.

textx-core/api/android/textx-core.api

Lines changed: 54 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,47 @@
11
public final class com/mooncloak/kodetools/textx/AnnotatedText : com/mooncloak/kodetools/textx/TextContent {
2-
public static final field $stable I
32
public static final field Companion Lcom/mooncloak/kodetools/textx/AnnotatedText$Companion;
4-
public fun <init> (Landroidx/compose/ui/text/AnnotatedString;)V
5-
public final fun component1 ()Landroidx/compose/ui/text/AnnotatedString;
6-
public final fun copy (Landroidx/compose/ui/text/AnnotatedString;)Lcom/mooncloak/kodetools/textx/AnnotatedText;
7-
public static synthetic fun copy$default (Lcom/mooncloak/kodetools/textx/AnnotatedText;Landroidx/compose/ui/text/AnnotatedString;ILjava/lang/Object;)Lcom/mooncloak/kodetools/textx/AnnotatedText;
3+
public static final synthetic fun box-impl (Landroidx/compose/ui/text/AnnotatedString;)Lcom/mooncloak/kodetools/textx/AnnotatedText;
4+
public static fun constructor-impl (Landroidx/compose/ui/text/AnnotatedString;)Landroidx/compose/ui/text/AnnotatedString;
85
public fun equals (Ljava/lang/Object;)Z
6+
public static fun equals-impl (Landroidx/compose/ui/text/AnnotatedString;Ljava/lang/Object;)Z
7+
public static final fun equals-impl0 (Landroidx/compose/ui/text/AnnotatedString;Landroidx/compose/ui/text/AnnotatedString;)Z
98
public final fun getAnnotated ()Landroidx/compose/ui/text/AnnotatedString;
109
public fun getType-4dSnLo0 ()Ljava/lang/String;
10+
public static fun getType-4dSnLo0 (Landroidx/compose/ui/text/AnnotatedString;)Ljava/lang/String;
1111
public fun getValue ()Ljava/lang/String;
12+
public static fun getValue-impl (Landroidx/compose/ui/text/AnnotatedString;)Ljava/lang/String;
1213
public fun hashCode ()I
14+
public static fun hashCode-impl (Landroidx/compose/ui/text/AnnotatedString;)I
1315
public fun toString ()Ljava/lang/String;
14-
}
15-
16-
public synthetic class com/mooncloak/kodetools/textx/AnnotatedText$$serializer : kotlinx/serialization/internal/GeneratedSerializer {
17-
public static final field $stable I
18-
public static final field INSTANCE Lcom/mooncloak/kodetools/textx/AnnotatedText$$serializer;
19-
public final fun childSerializers ()[Lkotlinx/serialization/KSerializer;
20-
public final fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Lcom/mooncloak/kodetools/textx/AnnotatedText;
21-
public synthetic fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Ljava/lang/Object;
22-
public final fun getDescriptor ()Lkotlinx/serialization/descriptors/SerialDescriptor;
23-
public final fun serialize (Lkotlinx/serialization/encoding/Encoder;Lcom/mooncloak/kodetools/textx/AnnotatedText;)V
24-
public synthetic fun serialize (Lkotlinx/serialization/encoding/Encoder;Ljava/lang/Object;)V
16+
public static fun toString-impl (Landroidx/compose/ui/text/AnnotatedString;)Ljava/lang/String;
17+
public final synthetic fun unbox-impl ()Landroidx/compose/ui/text/AnnotatedString;
2518
}
2619

2720
public final class com/mooncloak/kodetools/textx/AnnotatedText$Companion {
2821
public final fun serializer ()Lkotlinx/serialization/KSerializer;
2922
}
3023

31-
public final class com/mooncloak/kodetools/textx/HtmlText : com/mooncloak/kodetools/textx/TextContent {
24+
public final class com/mooncloak/kodetools/textx/AnnotatedText$Key {
3225
public static final field $stable I
26+
public static final field ANNOTATED Ljava/lang/String;
27+
public static final field INSTANCE Lcom/mooncloak/kodetools/textx/AnnotatedText$Key;
28+
}
29+
30+
public final class com/mooncloak/kodetools/textx/HtmlText : com/mooncloak/kodetools/textx/TextContent {
3331
public static final field Companion Lcom/mooncloak/kodetools/textx/HtmlText$Companion;
34-
public fun <init> (Ljava/lang/String;)V
35-
public final fun component1 ()Ljava/lang/String;
36-
public final fun copy (Ljava/lang/String;)Lcom/mooncloak/kodetools/textx/HtmlText;
37-
public static synthetic fun copy$default (Lcom/mooncloak/kodetools/textx/HtmlText;Ljava/lang/String;ILjava/lang/Object;)Lcom/mooncloak/kodetools/textx/HtmlText;
32+
public static final synthetic fun box-impl (Ljava/lang/String;)Lcom/mooncloak/kodetools/textx/HtmlText;
33+
public static fun constructor-impl (Ljava/lang/String;)Ljava/lang/String;
3834
public fun equals (Ljava/lang/Object;)Z
35+
public static fun equals-impl (Ljava/lang/String;Ljava/lang/Object;)Z
36+
public static final fun equals-impl0 (Ljava/lang/String;Ljava/lang/String;)Z
3937
public fun getType-4dSnLo0 ()Ljava/lang/String;
38+
public static fun getType-4dSnLo0 (Ljava/lang/String;)Ljava/lang/String;
4039
public fun getValue ()Ljava/lang/String;
4140
public fun hashCode ()I
41+
public static fun hashCode-impl (Ljava/lang/String;)I
4242
public fun toString ()Ljava/lang/String;
43-
}
44-
45-
public synthetic class com/mooncloak/kodetools/textx/HtmlText$$serializer : kotlinx/serialization/internal/GeneratedSerializer {
46-
public static final field $stable I
47-
public static final field INSTANCE Lcom/mooncloak/kodetools/textx/HtmlText$$serializer;
48-
public final fun childSerializers ()[Lkotlinx/serialization/KSerializer;
49-
public final fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Lcom/mooncloak/kodetools/textx/HtmlText;
50-
public synthetic fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Ljava/lang/Object;
51-
public final fun getDescriptor ()Lkotlinx/serialization/descriptors/SerialDescriptor;
52-
public final fun serialize (Lkotlinx/serialization/encoding/Encoder;Lcom/mooncloak/kodetools/textx/HtmlText;)V
53-
public synthetic fun serialize (Lkotlinx/serialization/encoding/Encoder;Ljava/lang/Object;)V
43+
public static fun toString-impl (Ljava/lang/String;)Ljava/lang/String;
44+
public final synthetic fun unbox-impl ()Ljava/lang/String;
5445
}
5546

5647
public final class com/mooncloak/kodetools/textx/HtmlText$Companion {
@@ -91,6 +82,7 @@ public final class com/mooncloak/kodetools/textx/MarkdownFlavor$Companion {
9182
public final class com/mooncloak/kodetools/textx/MarkdownText : com/mooncloak/kodetools/textx/TextContent {
9283
public static final field $stable I
9384
public static final field Companion Lcom/mooncloak/kodetools/textx/MarkdownText$Companion;
85+
public synthetic fun <init> (Ljava/lang/String;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
9486
public synthetic fun <init> (Ljava/lang/String;Ljava/lang/String;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
9587
public final fun component1 ()Ljava/lang/String;
9688
public final fun component2-JUt9nyA ()Ljava/lang/String;
@@ -104,44 +96,31 @@ public final class com/mooncloak/kodetools/textx/MarkdownText : com/mooncloak/ko
10496
public fun toString ()Ljava/lang/String;
10597
}
10698

107-
public synthetic class com/mooncloak/kodetools/textx/MarkdownText$$serializer : kotlinx/serialization/internal/GeneratedSerializer {
108-
public static final field $stable I
109-
public static final field INSTANCE Lcom/mooncloak/kodetools/textx/MarkdownText$$serializer;
110-
public final fun childSerializers ()[Lkotlinx/serialization/KSerializer;
111-
public final fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Lcom/mooncloak/kodetools/textx/MarkdownText;
112-
public synthetic fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Ljava/lang/Object;
113-
public final fun getDescriptor ()Lkotlinx/serialization/descriptors/SerialDescriptor;
114-
public final fun serialize (Lkotlinx/serialization/encoding/Encoder;Lcom/mooncloak/kodetools/textx/MarkdownText;)V
115-
public synthetic fun serialize (Lkotlinx/serialization/encoding/Encoder;Ljava/lang/Object;)V
116-
}
117-
11899
public final class com/mooncloak/kodetools/textx/MarkdownText$Companion {
119100
public final fun serializer ()Lkotlinx/serialization/KSerializer;
120101
}
121102

122-
public final class com/mooncloak/kodetools/textx/PlainText : com/mooncloak/kodetools/textx/TextContent {
103+
public final class com/mooncloak/kodetools/textx/MarkdownText$Key {
123104
public static final field $stable I
105+
public static final field FLAVOR Ljava/lang/String;
106+
public static final field INSTANCE Lcom/mooncloak/kodetools/textx/MarkdownText$Key;
107+
}
108+
109+
public final class com/mooncloak/kodetools/textx/PlainText : com/mooncloak/kodetools/textx/TextContent {
124110
public static final field Companion Lcom/mooncloak/kodetools/textx/PlainText$Companion;
125-
public fun <init> (Ljava/lang/String;)V
126-
public final fun component1 ()Ljava/lang/String;
127-
public final fun copy (Ljava/lang/String;)Lcom/mooncloak/kodetools/textx/PlainText;
128-
public static synthetic fun copy$default (Lcom/mooncloak/kodetools/textx/PlainText;Ljava/lang/String;ILjava/lang/Object;)Lcom/mooncloak/kodetools/textx/PlainText;
111+
public static final synthetic fun box-impl (Ljava/lang/String;)Lcom/mooncloak/kodetools/textx/PlainText;
112+
public static fun constructor-impl (Ljava/lang/String;)Ljava/lang/String;
129113
public fun equals (Ljava/lang/Object;)Z
114+
public static fun equals-impl (Ljava/lang/String;Ljava/lang/Object;)Z
115+
public static final fun equals-impl0 (Ljava/lang/String;Ljava/lang/String;)Z
130116
public fun getType-4dSnLo0 ()Ljava/lang/String;
117+
public static fun getType-4dSnLo0 (Ljava/lang/String;)Ljava/lang/String;
131118
public fun getValue ()Ljava/lang/String;
132119
public fun hashCode ()I
120+
public static fun hashCode-impl (Ljava/lang/String;)I
133121
public fun toString ()Ljava/lang/String;
134-
}
135-
136-
public synthetic class com/mooncloak/kodetools/textx/PlainText$$serializer : kotlinx/serialization/internal/GeneratedSerializer {
137-
public static final field $stable I
138-
public static final field INSTANCE Lcom/mooncloak/kodetools/textx/PlainText$$serializer;
139-
public final fun childSerializers ()[Lkotlinx/serialization/KSerializer;
140-
public final fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Lcom/mooncloak/kodetools/textx/PlainText;
141-
public synthetic fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Ljava/lang/Object;
142-
public final fun getDescriptor ()Lkotlinx/serialization/descriptors/SerialDescriptor;
143-
public final fun serialize (Lkotlinx/serialization/encoding/Encoder;Lcom/mooncloak/kodetools/textx/PlainText;)V
144-
public synthetic fun serialize (Lkotlinx/serialization/encoding/Encoder;Ljava/lang/Object;)V
122+
public static fun toString-impl (Ljava/lang/String;)Ljava/lang/String;
123+
public final synthetic fun unbox-impl ()Ljava/lang/String;
145124
}
146125

147126
public final class com/mooncloak/kodetools/textx/PlainText$Companion {
@@ -158,6 +137,22 @@ public final class com/mooncloak/kodetools/textx/TextContent$Companion {
158137
public final fun serializer ()Lkotlinx/serialization/KSerializer;
159138
}
160139

140+
public final class com/mooncloak/kodetools/textx/TextContent$Discriminator {
141+
public static final field $stable I
142+
public static final field ANNOTATED Ljava/lang/String;
143+
public static final field HTML Ljava/lang/String;
144+
public static final field INSTANCE Lcom/mooncloak/kodetools/textx/TextContent$Discriminator;
145+
public static final field MARKDOWN Ljava/lang/String;
146+
public static final field PLAIN Ljava/lang/String;
147+
}
148+
149+
public final class com/mooncloak/kodetools/textx/TextContent$Key {
150+
public static final field $stable I
151+
public static final field INSTANCE Lcom/mooncloak/kodetools/textx/TextContent$Key;
152+
public static final field TYPE Ljava/lang/String;
153+
public static final field VALUE Ljava/lang/String;
154+
}
155+
161156
public final class com/mooncloak/kodetools/textx/TextContent$Type {
162157
public static final field Companion Lcom/mooncloak/kodetools/textx/TextContent$Type$Companion;
163158
public static final synthetic fun box-impl (Ljava/lang/String;)Lcom/mooncloak/kodetools/textx/TextContent$Type;

0 commit comments

Comments
 (0)