github.com/lirm/aeron-go@v0.0.0-20230415210743-920325491dc4/cluster/codecs/ClusterTimeUnit.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 ClusterTimeUnitEnum int32
    12  type ClusterTimeUnitValues struct {
    13  	MILLIS    ClusterTimeUnitEnum
    14  	MICROS    ClusterTimeUnitEnum
    15  	NANOS     ClusterTimeUnitEnum
    16  	NullValue ClusterTimeUnitEnum
    17  }
    18  
    19  var ClusterTimeUnit = ClusterTimeUnitValues{0, 1, 2, -2147483648}
    20  
    21  func (c ClusterTimeUnitEnum) Encode(_m *SbeGoMarshaller, _w io.Writer) error {
    22  	if err := _m.WriteInt32(_w, int32(c)); err != nil {
    23  		return err
    24  	}
    25  	return nil
    26  }
    27  
    28  func (c *ClusterTimeUnitEnum) Decode(_m *SbeGoMarshaller, _r io.Reader, actingVersion uint16) error {
    29  	if err := _m.ReadInt32(_r, (*int32)(c)); err != nil {
    30  		return err
    31  	}
    32  	return nil
    33  }
    34  
    35  func (c ClusterTimeUnitEnum) RangeCheck(actingVersion uint16, schemaVersion uint16) error {
    36  	if actingVersion > schemaVersion {
    37  		return nil
    38  	}
    39  	value := reflect.ValueOf(ClusterTimeUnit)
    40  	for idx := 0; idx < value.NumField(); idx++ {
    41  		if c == value.Field(idx).Interface() {
    42  			return nil
    43  		}
    44  	}
    45  	return fmt.Errorf("Range check failed on ClusterTimeUnit, unknown enumeration value %d", c)
    46  }
    47  
    48  func (*ClusterTimeUnitEnum) EncodedLength() int64 {
    49  	return 4
    50  }
    51  
    52  func (*ClusterTimeUnitEnum) MILLISSinceVersion() uint16 {
    53  	return 0
    54  }
    55  
    56  func (c *ClusterTimeUnitEnum) MILLISInActingVersion(actingVersion uint16) bool {
    57  	return actingVersion >= c.MILLISSinceVersion()
    58  }
    59  
    60  func (*ClusterTimeUnitEnum) MILLISDeprecated() uint16 {
    61  	return 0
    62  }
    63  
    64  func (*ClusterTimeUnitEnum) MICROSSinceVersion() uint16 {
    65  	return 0
    66  }
    67  
    68  func (c *ClusterTimeUnitEnum) MICROSInActingVersion(actingVersion uint16) bool {
    69  	return actingVersion >= c.MICROSSinceVersion()
    70  }
    71  
    72  func (*ClusterTimeUnitEnum) MICROSDeprecated() uint16 {
    73  	return 0
    74  }
    75  
    76  func (*ClusterTimeUnitEnum) NANOSSinceVersion() uint16 {
    77  	return 0
    78  }
    79  
    80  func (c *ClusterTimeUnitEnum) NANOSInActingVersion(actingVersion uint16) bool {
    81  	return actingVersion >= c.NANOSSinceVersion()
    82  }
    83  
    84  func (*ClusterTimeUnitEnum) NANOSDeprecated() uint16 {
    85  	return 0
    86  }