github.com/keybase/client/go@v0.0.0-20240309051027-028f7c731f8b/protocol/chat1/emoji.go (about) 1 // Auto-generated to Go types and interfaces using avdl-compiler v1.4.10 (https://github.com/keybase/node-avdl-compiler) 2 // Input file: avdl/chat1/emoji.avdl 3 4 package chat1 5 6 import ( 7 "errors" 8 "fmt" 9 gregor1 "github.com/keybase/client/go/protocol/gregor1" 10 "github.com/keybase/go-framed-msgpack-rpc/rpc" 11 ) 12 13 type EmojiLoadSourceTyp int 14 15 const ( 16 EmojiLoadSourceTyp_HTTPSRV EmojiLoadSourceTyp = 0 17 EmojiLoadSourceTyp_STR EmojiLoadSourceTyp = 1 18 ) 19 20 func (o EmojiLoadSourceTyp) DeepCopy() EmojiLoadSourceTyp { return o } 21 22 var EmojiLoadSourceTypMap = map[string]EmojiLoadSourceTyp{ 23 "HTTPSRV": 0, 24 "STR": 1, 25 } 26 27 var EmojiLoadSourceTypRevMap = map[EmojiLoadSourceTyp]string{ 28 0: "HTTPSRV", 29 1: "STR", 30 } 31 32 func (e EmojiLoadSourceTyp) String() string { 33 if v, ok := EmojiLoadSourceTypRevMap[e]; ok { 34 return v 35 } 36 return fmt.Sprintf("%v", int(e)) 37 } 38 39 type EmojiLoadSource struct { 40 Typ__ EmojiLoadSourceTyp `codec:"typ" json:"typ"` 41 Httpsrv__ *string `codec:"httpsrv,omitempty" json:"httpsrv,omitempty"` 42 Str__ *string `codec:"str,omitempty" json:"str,omitempty"` 43 } 44 45 func (o *EmojiLoadSource) Typ() (ret EmojiLoadSourceTyp, err error) { 46 switch o.Typ__ { 47 case EmojiLoadSourceTyp_HTTPSRV: 48 if o.Httpsrv__ == nil { 49 err = errors.New("unexpected nil value for Httpsrv__") 50 return ret, err 51 } 52 case EmojiLoadSourceTyp_STR: 53 if o.Str__ == nil { 54 err = errors.New("unexpected nil value for Str__") 55 return ret, err 56 } 57 } 58 return o.Typ__, nil 59 } 60 61 func (o EmojiLoadSource) Httpsrv() (res string) { 62 if o.Typ__ != EmojiLoadSourceTyp_HTTPSRV { 63 panic("wrong case accessed") 64 } 65 if o.Httpsrv__ == nil { 66 return 67 } 68 return *o.Httpsrv__ 69 } 70 71 func (o EmojiLoadSource) Str() (res string) { 72 if o.Typ__ != EmojiLoadSourceTyp_STR { 73 panic("wrong case accessed") 74 } 75 if o.Str__ == nil { 76 return 77 } 78 return *o.Str__ 79 } 80 81 func NewEmojiLoadSourceWithHttpsrv(v string) EmojiLoadSource { 82 return EmojiLoadSource{ 83 Typ__: EmojiLoadSourceTyp_HTTPSRV, 84 Httpsrv__: &v, 85 } 86 } 87 88 func NewEmojiLoadSourceWithStr(v string) EmojiLoadSource { 89 return EmojiLoadSource{ 90 Typ__: EmojiLoadSourceTyp_STR, 91 Str__: &v, 92 } 93 } 94 95 func (o EmojiLoadSource) DeepCopy() EmojiLoadSource { 96 return EmojiLoadSource{ 97 Typ__: o.Typ__.DeepCopy(), 98 Httpsrv__: (func(x *string) *string { 99 if x == nil { 100 return nil 101 } 102 tmp := (*x) 103 return &tmp 104 })(o.Httpsrv__), 105 Str__: (func(x *string) *string { 106 if x == nil { 107 return nil 108 } 109 tmp := (*x) 110 return &tmp 111 })(o.Str__), 112 } 113 } 114 115 type EmojiRemoteSourceTyp int 116 117 const ( 118 EmojiRemoteSourceTyp_MESSAGE EmojiRemoteSourceTyp = 0 119 EmojiRemoteSourceTyp_STOCKALIAS EmojiRemoteSourceTyp = 1 120 ) 121 122 func (o EmojiRemoteSourceTyp) DeepCopy() EmojiRemoteSourceTyp { return o } 123 124 var EmojiRemoteSourceTypMap = map[string]EmojiRemoteSourceTyp{ 125 "MESSAGE": 0, 126 "STOCKALIAS": 1, 127 } 128 129 var EmojiRemoteSourceTypRevMap = map[EmojiRemoteSourceTyp]string{ 130 0: "MESSAGE", 131 1: "STOCKALIAS", 132 } 133 134 func (e EmojiRemoteSourceTyp) String() string { 135 if v, ok := EmojiRemoteSourceTypRevMap[e]; ok { 136 return v 137 } 138 return fmt.Sprintf("%v", int(e)) 139 } 140 141 type EmojiMessage struct { 142 ConvID ConversationID `codec:"convID" json:"convID"` 143 MsgID MessageID `codec:"msgID" json:"msgID"` 144 IsAlias bool `codec:"isAlias" json:"isAlias"` 145 } 146 147 func (o EmojiMessage) DeepCopy() EmojiMessage { 148 return EmojiMessage{ 149 ConvID: o.ConvID.DeepCopy(), 150 MsgID: o.MsgID.DeepCopy(), 151 IsAlias: o.IsAlias, 152 } 153 } 154 155 type EmojiStockAlias struct { 156 Text string `codec:"text" json:"text"` 157 Username string `codec:"username" json:"username"` 158 Time gregor1.Time `codec:"time" json:"time"` 159 } 160 161 func (o EmojiStockAlias) DeepCopy() EmojiStockAlias { 162 return EmojiStockAlias{ 163 Text: o.Text, 164 Username: o.Username, 165 Time: o.Time.DeepCopy(), 166 } 167 } 168 169 type EmojiRemoteSource struct { 170 Typ__ EmojiRemoteSourceTyp `codec:"typ" json:"typ"` 171 Message__ *EmojiMessage `codec:"message,omitempty" json:"message,omitempty"` 172 Stockalias__ *EmojiStockAlias `codec:"stockalias,omitempty" json:"stockalias,omitempty"` 173 } 174 175 func (o *EmojiRemoteSource) Typ() (ret EmojiRemoteSourceTyp, err error) { 176 switch o.Typ__ { 177 case EmojiRemoteSourceTyp_MESSAGE: 178 if o.Message__ == nil { 179 err = errors.New("unexpected nil value for Message__") 180 return ret, err 181 } 182 case EmojiRemoteSourceTyp_STOCKALIAS: 183 if o.Stockalias__ == nil { 184 err = errors.New("unexpected nil value for Stockalias__") 185 return ret, err 186 } 187 } 188 return o.Typ__, nil 189 } 190 191 func (o EmojiRemoteSource) Message() (res EmojiMessage) { 192 if o.Typ__ != EmojiRemoteSourceTyp_MESSAGE { 193 panic("wrong case accessed") 194 } 195 if o.Message__ == nil { 196 return 197 } 198 return *o.Message__ 199 } 200 201 func (o EmojiRemoteSource) Stockalias() (res EmojiStockAlias) { 202 if o.Typ__ != EmojiRemoteSourceTyp_STOCKALIAS { 203 panic("wrong case accessed") 204 } 205 if o.Stockalias__ == nil { 206 return 207 } 208 return *o.Stockalias__ 209 } 210 211 func NewEmojiRemoteSourceWithMessage(v EmojiMessage) EmojiRemoteSource { 212 return EmojiRemoteSource{ 213 Typ__: EmojiRemoteSourceTyp_MESSAGE, 214 Message__: &v, 215 } 216 } 217 218 func NewEmojiRemoteSourceWithStockalias(v EmojiStockAlias) EmojiRemoteSource { 219 return EmojiRemoteSource{ 220 Typ__: EmojiRemoteSourceTyp_STOCKALIAS, 221 Stockalias__: &v, 222 } 223 } 224 225 func (o EmojiRemoteSource) DeepCopy() EmojiRemoteSource { 226 return EmojiRemoteSource{ 227 Typ__: o.Typ__.DeepCopy(), 228 Message__: (func(x *EmojiMessage) *EmojiMessage { 229 if x == nil { 230 return nil 231 } 232 tmp := (*x).DeepCopy() 233 return &tmp 234 })(o.Message__), 235 Stockalias__: (func(x *EmojiStockAlias) *EmojiStockAlias { 236 if x == nil { 237 return nil 238 } 239 tmp := (*x).DeepCopy() 240 return &tmp 241 })(o.Stockalias__), 242 } 243 } 244 245 type HarvestedEmoji struct { 246 Alias string `codec:"alias" json:"alias"` 247 IsBig bool `codec:"isBig" json:"isBig"` 248 IsCrossTeam bool `codec:"isCrossTeam" json:"isCrossTeam"` 249 Source EmojiRemoteSource `codec:"source" json:"source"` 250 } 251 252 func (o HarvestedEmoji) DeepCopy() HarvestedEmoji { 253 return HarvestedEmoji{ 254 Alias: o.Alias, 255 IsBig: o.IsBig, 256 IsCrossTeam: o.IsCrossTeam, 257 Source: o.Source.DeepCopy(), 258 } 259 } 260 261 type EmojiCreationInfo struct { 262 Username string `codec:"username" json:"username"` 263 Time gregor1.Time `codec:"time" json:"time"` 264 } 265 266 func (o EmojiCreationInfo) DeepCopy() EmojiCreationInfo { 267 return EmojiCreationInfo{ 268 Username: o.Username, 269 Time: o.Time.DeepCopy(), 270 } 271 } 272 273 type Emoji struct { 274 Alias string `codec:"alias" json:"alias"` 275 IsBig bool `codec:"isBig" json:"isBig"` 276 IsReacji bool `codec:"isReacji" json:"isReacji"` 277 IsCrossTeam bool `codec:"isCrossTeam" json:"isCrossTeam"` 278 IsAlias bool `codec:"isAlias" json:"isAlias"` 279 Source EmojiLoadSource `codec:"source" json:"source"` 280 NoAnimSource EmojiLoadSource `codec:"noAnimSource" json:"noAnimSource"` 281 RemoteSource EmojiRemoteSource `codec:"remoteSource" json:"remoteSource"` 282 CreationInfo *EmojiCreationInfo `codec:"creationInfo,omitempty" json:"creationInfo,omitempty"` 283 Teamname *string `codec:"teamname,omitempty" json:"teamname,omitempty"` 284 } 285 286 func (o Emoji) DeepCopy() Emoji { 287 return Emoji{ 288 Alias: o.Alias, 289 IsBig: o.IsBig, 290 IsReacji: o.IsReacji, 291 IsCrossTeam: o.IsCrossTeam, 292 IsAlias: o.IsAlias, 293 Source: o.Source.DeepCopy(), 294 NoAnimSource: o.NoAnimSource.DeepCopy(), 295 RemoteSource: o.RemoteSource.DeepCopy(), 296 CreationInfo: (func(x *EmojiCreationInfo) *EmojiCreationInfo { 297 if x == nil { 298 return nil 299 } 300 tmp := (*x).DeepCopy() 301 return &tmp 302 })(o.CreationInfo), 303 Teamname: (func(x *string) *string { 304 if x == nil { 305 return nil 306 } 307 tmp := (*x) 308 return &tmp 309 })(o.Teamname), 310 } 311 } 312 313 type EmojiGroup struct { 314 Name string `codec:"name" json:"name"` 315 Emojis []Emoji `codec:"emojis" json:"emojis"` 316 } 317 318 func (o EmojiGroup) DeepCopy() EmojiGroup { 319 return EmojiGroup{ 320 Name: o.Name, 321 Emojis: (func(x []Emoji) []Emoji { 322 if x == nil { 323 return nil 324 } 325 ret := make([]Emoji, len(x)) 326 for i, v := range x { 327 vCopy := v.DeepCopy() 328 ret[i] = vCopy 329 } 330 return ret 331 })(o.Emojis), 332 } 333 } 334 335 type UserEmojis struct { 336 Emojis []EmojiGroup `codec:"emojis" json:"emojis"` 337 } 338 339 func (o UserEmojis) DeepCopy() UserEmojis { 340 return UserEmojis{ 341 Emojis: (func(x []EmojiGroup) []EmojiGroup { 342 if x == nil { 343 return nil 344 } 345 ret := make([]EmojiGroup, len(x)) 346 for i, v := range x { 347 vCopy := v.DeepCopy() 348 ret[i] = vCopy 349 } 350 return ret 351 })(o.Emojis), 352 } 353 } 354 355 type EmojiStorage struct { 356 Mapping map[string]EmojiRemoteSource `codec:"mapping" json:"mapping"` 357 } 358 359 func (o EmojiStorage) DeepCopy() EmojiStorage { 360 return EmojiStorage{ 361 Mapping: (func(x map[string]EmojiRemoteSource) map[string]EmojiRemoteSource { 362 if x == nil { 363 return nil 364 } 365 ret := make(map[string]EmojiRemoteSource, len(x)) 366 for k, v := range x { 367 kCopy := k 368 vCopy := v.DeepCopy() 369 ret[kCopy] = vCopy 370 } 371 return ret 372 })(o.Mapping), 373 } 374 } 375 376 type EmojiInterface interface { 377 } 378 379 func EmojiProtocol(i EmojiInterface) rpc.Protocol { 380 return rpc.Protocol{ 381 Name: "chat.1.emoji", 382 Methods: map[string]rpc.ServeHandlerDescription{}, 383 } 384 } 385 386 type EmojiClient struct { 387 Cli rpc.GenericClient 388 }