github.com/lirm/aeron-go@v0.0.0-20230415210743-920325491dc4/archive/codecs/BooleanType.go (about) 1 // Generated SBE (Simple Binary Encoding) message codec 2 3 package codecs 4 5 import ( 6 "fmt" 7 "io" 8 "reflect" 9 ) 10 11 type BooleanTypeEnum int32 12 type BooleanTypeValues struct { 13 FALSE BooleanTypeEnum 14 TRUE BooleanTypeEnum 15 NullValue BooleanTypeEnum 16 } 17 18 var BooleanType = BooleanTypeValues{0, 1, -2147483648} 19 20 func (b BooleanTypeEnum) Encode(_m *SbeGoMarshaller, _w io.Writer) error { 21 if err := _m.WriteInt32(_w, int32(b)); err != nil { 22 return err 23 } 24 return nil 25 } 26 27 func (b *BooleanTypeEnum) Decode(_m *SbeGoMarshaller, _r io.Reader, actingVersion uint16) error { 28 if err := _m.ReadInt32(_r, (*int32)(b)); err != nil { 29 return err 30 } 31 return nil 32 } 33 34 func (b BooleanTypeEnum) RangeCheck(actingVersion uint16, schemaVersion uint16) error { 35 if actingVersion > schemaVersion { 36 return nil 37 } 38 value := reflect.ValueOf(BooleanType) 39 for idx := 0; idx < value.NumField(); idx++ { 40 if b == value.Field(idx).Interface() { 41 return nil 42 } 43 } 44 return fmt.Errorf("Range check failed on BooleanType, unknown enumeration value %d", b) 45 } 46 47 func (*BooleanTypeEnum) EncodedLength() int64 { 48 return 4 49 } 50 51 func (*BooleanTypeEnum) FALSESinceVersion() uint16 { 52 return 0 53 } 54 55 func (b *BooleanTypeEnum) FALSEInActingVersion(actingVersion uint16) bool { 56 return actingVersion >= b.FALSESinceVersion() 57 } 58 59 func (*BooleanTypeEnum) FALSEDeprecated() uint16 { 60 return 0 61 } 62 63 func (*BooleanTypeEnum) TRUESinceVersion() uint16 { 64 return 0 65 } 66 67 func (b *BooleanTypeEnum) TRUEInActingVersion(actingVersion uint16) bool { 68 return actingVersion >= b.TRUESinceVersion() 69 } 70 71 func (*BooleanTypeEnum) TRUEDeprecated() uint16 { 72 return 0 73 }