package Ġm ary k . core . properties . definitions Ċ Ċ import Ġm ary k . core . models . Simple Object DataModel Ċ import Ġm ary k . core . properties . Is Property Context Ċ import Ġm ary k . core . properties . ObjectProperty Definitions Ċ import Ġm ary k . core . properties . Property Definitions Ċ import Ġm ary k . core . properties . definitions . Property Definition Type . Fixed Bytes Ċ import Ġm ary k . core . properties . definitions . wrapper . Definition Wrapper Delegate Loader Ċ import Ġm ary k . core . properties . definitions . wrapper . Fixed Bytes Definition Wrapper Ċ import Ġm ary k . core . properties . definitions . wrapper . Object Definition Wrapper Delegate Loader Ċ import Ġm ary k . core . properties . types . Bytes Ċ import Ġm ary k . core . properties . types . numeric . UInt 3 2 Ċ import Ġm ary k . core . protobuf . Wire Type . LENGTH _ DE LIMIT ED Ċ import Ġm ary k . core . values . Simple Object Values Ċ import Ġkotlin . random . Random Ċ Ċ /** ĠDefinition Ġfor Ġa Ġbyte Ġarray Ġwith Ġfixed Ġlength Ġ*/ Ċ data Ġclass ĠFixed Bytes Definition ( ĊĠĠĠ Ġoverride Ġval Ġrequired : ĠBoolean Ġ= Ġtrue , ĊĠĠĠ Ġoverride Ġval Ġfinal : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġoverride Ġval Ġunique : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġoverride Ġval Ġmin Value : ĠBytes ? Ġ= Ġnull , ĊĠĠĠ Ġoverride Ġval ĠmaxValue : ĠBytes ? Ġ= Ġnull , ĊĠĠĠ Ġoverride Ġval Ġdefault : ĠBytes ? Ġ= Ġnull , ĊĠĠĠ Ġoverride Ġval Ġbyte Size : ĠInt Ċ ) Ġ: ĊĠĠĠ ĠIs Numeric Definition < Bytes >, ĊĠĠĠ ĠIs Serializable Fixed Bytes En codable < Bytes , ĠIs Property Context >, ĊĠĠĠ ĠIs Transport able Property Definition Type < Bytes >, ĊĠĠĠ ĠHas DefaultValue Definition < Bytes > Ġ{ ĊĠĠĠ Ġoverride Ġval Ġproperty Definition Type Ġ= ĠFixed Bytes ĊĠĠĠ Ġoverride Ġval ĠwireType Ġ= ĠLEN GTH _ DE LIMIT ED ĊĊĠĠĠ Ġoverride Ġfun Ġcreate Random () Ġ= ĠBytes ( Random . next Bytes ( this . byte Size )) ĊĊĠĠĠ Ġoverride Ġfun Ġread Storage Bytes ( length : ĠInt , Ġreader : Ġ() Ġ-> ĠByte ) Ġ= ĠBytes . from Byte Reader ( byte Size , Ġreader ) ĊĊĠĠĠ Ġoverride Ġfun Ġcalculate Storage Byte Length ( value : ĠBytes ) Ġ= Ġthis . byte Size ĊĊĠĠĠ Ġoverride Ġfun Ġwrite Storage Bytes ( value : ĠBytes , Ġwriter : Ġ( byte : ĠByte ) Ġ-> ĠUnit ) Ġ= Ġvalue . write Bytes ( writer ) ĊĊĠĠĠ Ġoverride Ġfun Ġcalculate Transport Byte Length ( value : ĠBytes ) Ġ= Ġthis . byte Size ĊĊĠĠĠ Ġoverride Ġfun Ġfrom String ( string : ĠString ) Ġ= ĠBytes ( string ) ĊĊĠĠĠ Ġoverride Ġfun Ġfrom Native Type ( value : ĠAny ) Ġ= ĊĠĠĠĠĠĠĠ Ġif Ġ( value Ġis ĠByteArray Ġ&& Ġvalue . size Ġ== Ġthis . byte Size ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBytes ( value ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġas ? ĠBytes ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcompatible With ( ĊĠĠĠĠĠĠĠ Ġdefinition : ĠIs Property Definition <* >, ĊĠĠĠĠĠĠĠ Ġadd In compatibility Reason : Ġ(( String ) Ġ-> ĠUnit )? ĊĠĠĠ Ġ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġcompatible Ġ= Ġsuper < Is Numeric Definition >. compatible With ( definition , Ġadd In compatibility Reason ) ĊĊĠĠĠĠĠĠĠ Ġ( definition Ġas ? ĠFixed Bytes Definition )?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( definition . byte Size Ġ!= Ġthis . byte Size ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd In compatibility Reason ?. invoke (" Byte Ġsize Ġfor Ġfixed Ġbytes Ġproperties Ġshould Ġbe Ġequal . Ġ$ byte Size Ġ!= Ġ${ definition . byte Size }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcompatible Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġcompatible ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress (" unused ") ĊĠĠĠ Ġobject ĠModel Ġ: ĠSimple Object DataModel < Fixed Bytes Definition , ĠObject Property Definitions < Fixed Bytes Definition >>( ĊĠĠĠĠĠĠĠ Ġproperties Ġ= Ġobject Ġ: ĠObject Property Definitions < Fixed Bytes Definition >() Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrequired Ġby Ġboolean ( 1 u , ĠFixed Bytes Definition :: required , Ġdefault Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfinal Ġby Ġboolean ( 2 u , ĠFixed Bytes Definition :: final , Ġdefault Ġ= Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġunique Ġby Ġboolean ( 3 u , ĠFixed Bytes Definition :: unique , Ġdefault Ġ= Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmin Value Ġby Ġflex Bytes ( 4 u , ĠFixed Bytes Definition :: min Value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠmaxValue Ġby Ġflex Bytes ( 5 u , ĠFixed Bytes Definition :: max Value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdefault Ġby Ġflex Bytes ( 6 u , ĠFixed Bytes Definition :: default ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbyte Size Ġby Ġnumber ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 7 u , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgetter Ġ= ĠFixed Bytes Definition :: byte Size , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtype Ġ= ĠUInt 3 2 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġto Serializable Ġ= Ġ{ Ġvalue , Ġ_: ĠIs Property Context ? Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue ?. to UInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrom Serializable Ġ= Ġ{ Ġit ?. toInt () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġinvoke ( values : ĠSimple Object Values < Fixed Bytes Definition >) Ġ= ĠFixed Bytes Definition ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequired Ġ= Ġvalues ( 1 u ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfinal Ġ= Ġvalues ( 2 u ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġunique Ġ= Ġvalues ( 3 u ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmin Value Ġ= Ġvalues ( 4 u ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠmaxValue Ġ= Ġvalues ( 5 u ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdefault Ġ= Ġvalues ( 6 u ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbyte Size Ġ= Ġvalues ( 7 u ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠProperty Definitions . fixed Bytes ( ĊĠĠĠ Ġindex : ĠUInt , ĊĠĠĠ Ġbyte Size : ĠInt , ĊĠĠĠ Ġname : ĠString ? Ġ= Ġnull , ĊĠĠĠ Ġrequired : ĠBoolean Ġ= Ġtrue , ĊĠĠĠ Ġfinal : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġunique : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġmin Value : ĠBytes ? Ġ= Ġnull , ĊĠĠĠ ĠmaxValue : ĠBytes ? Ġ= Ġnull , ĊĠĠĠ Ġdefault : ĠBytes ? Ġ= Ġnull , ĊĠĠĠ Ġalternative Names : ĠSet < String >? Ġ= Ġnull Ċ ) Ġ= ĠDefinition Wrapper Delegate Loader ( this ) Ġ{ Ġprop Name Ġ-> ĊĠĠĠ ĠFixed Bytes Definition Wrapper < Bytes , ĠBytes , ĠIs Property Context , ĠFixed Bytes Definition , ĠAny >( ĊĠĠĠĠĠĠĠ Ġindex , ĊĠĠĠĠĠĠĠ Ġname Ġ?: Ġprop Name , ĊĠĠĠĠĠĠĠ ĠFixed Bytes Definition ( required , Ġfinal , Ġunique , Ġmin Value , ĠmaxValue , Ġdefault , Ġbyte Size ), ĊĠĠĠĠĠĠĠ Ġalternative Names ĊĠĠĠ Ġ) Ċ } Ċ Ċ fun Ġ< TO : ĠAny , ĠDO : ĠAny > ĠObject Property Definitions < DO >. fixed Bytes ( ĊĠĠĠ Ġindex : ĠUInt , ĊĠĠĠ Ġgetter : Ġ( DO ) Ġ-> ĠTO ?, ĊĠĠĠ Ġbyte Size : ĠInt , ĊĠĠĠ Ġname : ĠString ? Ġ= Ġnull , ĊĠĠĠ Ġrequired : ĠBoolean Ġ= Ġtrue , ĊĠĠĠ Ġfinal : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġunique : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġmin Value : ĠBytes ? Ġ= Ġnull , ĊĠĠĠ ĠmaxValue : ĠBytes ? Ġ= Ġnull , ĊĠĠĠ Ġdefault : ĠBytes ? Ġ= Ġnull , ĊĠĠĠ Ġalternative Names : ĠSet < String >? Ġ= Ġnull Ċ ): ĠObject Definition Wrapper Delegate Loader < Fixed Bytes Definition Wrapper < Bytes , ĠTO , ĠIs Property Context , ĠFixed Bytes Definition , ĠDO >, ĠDO , ĠIs Property Context > Ġ= ĊĠĠĠ Ġfixed Bytes ( index , Ġgetter , Ġbyte Size , Ġname , Ġrequired , Ġfinal , Ġ Ġunique , Ġmin Value , ĠmaxValue , Ġdefault , Ġalternative Names , Ġto Serializable Ġ= Ġnull ) Ċ Ċ fun Ġ< TO : ĠAny , ĠDO : ĠAny , ĠCX : ĠIs Property Context > ĠObject Property Definitions < DO >. fixed Bytes ( ĊĠĠĠ Ġindex : ĠUInt , ĊĠĠĠ Ġgetter : Ġ( DO ) Ġ-> ĠTO ?, ĊĠĠĠ Ġbyte Size : ĠInt , ĊĠĠĠ Ġname : ĠString ? Ġ= Ġnull , ĊĠĠĠ Ġrequired : ĠBoolean Ġ= Ġtrue , ĊĠĠĠ Ġfinal : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġunique : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġmin Value : ĠBytes ? Ġ= Ġnull , ĊĠĠĠ ĠmaxValue : ĠBytes ? Ġ= Ġnull , ĊĠĠĠ Ġdefault : ĠBytes ? Ġ= Ġnull , ĊĠĠĠ Ġalternative Names : ĠSet < String >? Ġ= Ġnull , ĊĠĠĠ Ġto Serializable : Ġ( Unit .( TO ?, ĠCX ?) Ġ-> ĠBytes ? )? Ġ= Ġnull , ĊĠĠĠ Ġfrom Serializable : Ġ( Unit .( Bytes ?) Ġ-> ĠTO ? )? Ġ= Ġnull , ĊĠĠĠ Ġshould Serialize : Ġ( Unit .( Any ) Ġ-> ĠBoolean )? Ġ= Ġnull , ĊĠĠĠ Ġcapt urer : Ġ( Unit .( CX , ĠBytes ) Ġ-> ĠUnit )? Ġ= Ġnull Ċ ) Ġ= ĠObject Definition Wrapper Delegate Loader ( this ) Ġ{ Ġprop Name Ġ-> ĊĠĠĠ ĠFixed Bytes Definition Wrapper ( ĊĠĠĠĠĠĠĠ Ġindex , ĊĠĠĠĠĠĠĠ Ġname Ġ?: Ġprop Name , ĊĠĠĠĠĠĠĠ ĠFixed Bytes Definition ( required , Ġfinal , Ġunique , Ġmin Value , ĠmaxValue , Ġdefault , Ġbyte Size ), ĊĠĠĠĠĠĠĠ Ġalternative Names , ĊĠĠĠĠĠĠĠ Ġgetter Ġ= Ġgetter , ĊĠĠĠĠĠĠĠ Ġcapt urer Ġ= Ġcapt urer , ĊĠĠĠĠĠĠĠ Ġto Serializable Ġ= Ġto Serializable , ĊĠĠĠĠĠĠĠ Ġfrom Serializable Ġ= Ġfrom Serializable , ĊĠĠĠĠĠĠĠ Ġshould Serialize Ġ= Ġshould Serialize ĊĠĠĠ Ġ) Ċ } Ċ