git.iko.soy/opencode-android
on master help sign in
150 lines 5.1 kB history raw
1package soy.iko.opencode.shared;
4public abstract class Screen {
6 abstract public void serialize(com.novi.serde.Serializer serializer) throws com.novi.serde.SerializationError;
8 public static Screen deserialize(com.novi.serde.Deserializer deserializer) throws com.novi.serde.DeserializationError {
9 int index = deserializer.deserialize_variant_index();
10 switch (index) {
11 case 0: return Connect.load(deserializer);
12 case 1: return Sessions.load(deserializer);
13 case 2: return Chat.load(deserializer);
14 default: throw new com.novi.serde.DeserializationError("Unknown variant index for Screen: " + index);
15 }
16 }
18 public byte[] bincodeSerialize() throws com.novi.serde.SerializationError {
19 com.novi.serde.Serializer serializer = new com.novi.bincode.BincodeSerializer();
20 serialize(serializer);
21 return serializer.get_bytes();
22 }
24 public static Screen bincodeDeserialize(byte[] input) throws com.novi.serde.DeserializationError {
25 if (input == null) {
26 throw new com.novi.serde.DeserializationError("Cannot deserialize null array");
27 }
28 com.novi.serde.Deserializer deserializer = new com.novi.bincode.BincodeDeserializer(input);
29 Screen value = deserialize(deserializer);
30 if (deserializer.get_buffer_offset() < input.length) {
31 throw new com.novi.serde.DeserializationError("Some input bytes were not read");
32 }
33 return value;
34 }
36 public static final class Connect extends Screen {
37 public Connect() {
38 }
40 public void serialize(com.novi.serde.Serializer serializer) throws com.novi.serde.SerializationError {
41 serializer.increase_container_depth();
42 serializer.serialize_variant_index(0);
43 serializer.decrease_container_depth();
44 }
46 static Connect load(com.novi.serde.Deserializer deserializer) throws com.novi.serde.DeserializationError {
47 deserializer.increase_container_depth();
48 Builder builder = new Builder();
49 deserializer.decrease_container_depth();
50 return builder.build();
51 }
53 public boolean equals(Object obj) {
54 if (this == obj) return true;
55 if (obj == null) return false;
56 if (getClass() != obj.getClass()) return false;
57 Connect other = (Connect) obj;
58 return true;
59 }
61 public int hashCode() {
62 int value = 7;
63 return value;
64 }
66 public static final class Builder {
67 public Connect build() {
68 return new Connect(
69 );
70 }
71 }
72 }
74 public static final class Sessions extends Screen {
75 public Sessions() {
76 }
78 public void serialize(com.novi.serde.Serializer serializer) throws com.novi.serde.SerializationError {
79 serializer.increase_container_depth();
80 serializer.serialize_variant_index(1);
81 serializer.decrease_container_depth();
82 }
84 static Sessions load(com.novi.serde.Deserializer deserializer) throws com.novi.serde.DeserializationError {
85 deserializer.increase_container_depth();
86 Builder builder = new Builder();
87 deserializer.decrease_container_depth();
88 return builder.build();
89 }
91 public boolean equals(Object obj) {
92 if (this == obj) return true;
93 if (obj == null) return false;
94 if (getClass() != obj.getClass()) return false;
95 Sessions other = (Sessions) obj;
96 return true;
97 }
99 public int hashCode() {
100 int value = 7;
101 return value;
102 }
104 public static final class Builder {
105 public Sessions build() {
106 return new Sessions(
107 );
108 }
109 }
110 }
112 public static final class Chat extends Screen {
113 public Chat() {
114 }
116 public void serialize(com.novi.serde.Serializer serializer) throws com.novi.serde.SerializationError {
117 serializer.increase_container_depth();
118 serializer.serialize_variant_index(2);
119 serializer.decrease_container_depth();
120 }
122 static Chat load(com.novi.serde.Deserializer deserializer) throws com.novi.serde.DeserializationError {
123 deserializer.increase_container_depth();
124 Builder builder = new Builder();
125 deserializer.decrease_container_depth();
126 return builder.build();
127 }
129 public boolean equals(Object obj) {
130 if (this == obj) return true;
131 if (obj == null) return false;
132 if (getClass() != obj.getClass()) return false;
133 Chat other = (Chat) obj;
134 return true;
135 }
137 public int hashCode() {
138 int value = 7;
139 return value;
140 }
142 public static final class Builder {
143 public Chat build() {
144 return new Chat(
145 );
146 }
147 }
148 }