-
Notifications
You must be signed in to change notification settings - Fork 83
/
union_string_int.go
86 lines (60 loc) · 1.96 KB
/
union_string_int.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
// Code generated by github.com/actgardner/gogen-avro. DO NOT EDIT.
/*
* SOURCE:
* evolution.avsc
*/
package avro
import (
"io"
"fmt"
"github.com/actgardner/gogen-avro/vm"
"github.com/actgardner/gogen-avro/vm/types"
)
type UnionStringIntTypeEnum int
const (
UnionStringIntTypeEnumString UnionStringIntTypeEnum = 0
UnionStringIntTypeEnumInt UnionStringIntTypeEnum = 1
)
type UnionStringInt struct {
String string
Int int32
UnionType UnionStringIntTypeEnum
}
func writeUnionStringInt(r *UnionStringInt, w io.Writer) error {
err := vm.WriteLong(int64(r.UnionType), w)
if err != nil {
return err
}
switch r.UnionType{
case UnionStringIntTypeEnumString:
return vm.WriteString(r.String, w)
case UnionStringIntTypeEnumInt:
return vm.WriteInt(r.Int, w)
}
return fmt.Errorf("invalid value for *UnionStringInt")
}
func NewUnionStringInt() *UnionStringInt {
return &UnionStringInt{}
}
func (_ *UnionStringInt) SetBoolean(v bool) { panic("Unsupported operation") }
func (_ *UnionStringInt) SetInt(v int32) { panic("Unsupported operation") }
func (_ *UnionStringInt) SetFloat(v float32) { panic("Unsupported operation") }
func (_ *UnionStringInt) SetDouble(v float64) { panic("Unsupported operation") }
func (_ *UnionStringInt) SetBytes(v []byte) { panic("Unsupported operation") }
func (_ *UnionStringInt) SetString(v string) { panic("Unsupported operation") }
func (r *UnionStringInt) SetLong(v int64) {
r.UnionType = (UnionStringIntTypeEnum)(v)
}
func (r *UnionStringInt) Get(i int) types.Field {
switch (i) {
case 0:
return (*types.String)(&r.String)
case 1:
return (*types.Int)(&r.Int)
}
panic("Unknown field index")
}
func (_ *UnionStringInt) SetDefault(i int) { panic("Unsupported operation") }
func (_ *UnionStringInt) AppendMap(key string) types.Field { panic("Unsupported operation") }
func (_ *UnionStringInt) AppendArray() types.Field { panic("Unsupported operation") }
func (_ *UnionStringInt) Finalize() { }