getStructCodec
Call Signature
Returns a codec for encoding and decoding custom objects.
This codec serializes objects by encoding and decoding each field sequentially.
Type Parameters
| Type Parameter | Description |
|---|---|
TFields extends Fields<FixedSizeCodec<any>> | The fields of the struct, each paired with a codec. |
Parameters
| Parameter | Type | Description |
|---|---|---|
fields | TFields | The name and codec of each field. |
Returns
FixedSizeCodec<DrainOuterGeneric<{ [I in never as TFields[I][0]]: TFields[I][1] extends Encoder<TFrom> ? TFrom : never }>, DrainOuterGeneric<{ [I in never as TFields[I][0]]: TFields[I][1] extends Decoder<TTo> ? TTo : never }> & DrainOuterGeneric<{ [I in never as TFields[I][0]]: TFields[I][1] extends Encoder<TFrom> ? TFrom : never }>>
A FixedSizeCodec or VariableSizeCodec for encoding and decoding custom objects.
Example
Encoding and decoding a custom struct.
Remarks
Separate getStructEncoder and getStructDecoder functions are available.
See
Call Signature
Returns a codec for encoding and decoding custom objects.
This codec serializes objects by encoding and decoding each field sequentially.
Type Parameters
| Type Parameter | Description |
|---|---|
TFields extends Fields<Codec<any>> | The fields of the struct, each paired with a codec. |
Parameters
| Parameter | Type | Description |
|---|---|---|
fields | TFields | The name and codec of each field. |
Returns
VariableSizeCodec<DrainOuterGeneric<{ [I in never as TFields[I][0]]: TFields[I][1] extends Encoder<TFrom> ? TFrom : never }>, DrainOuterGeneric<{ [I in never as TFields[I][0]]: TFields[I][1] extends Decoder<TTo> ? TTo : never }> & DrainOuterGeneric<{ [I in never as TFields[I][0]]: TFields[I][1] extends Encoder<TFrom> ? TFrom : never }>>
A FixedSizeCodec or VariableSizeCodec for encoding and decoding custom objects.
Example
Encoding and decoding a custom struct.
Remarks
Separate getStructEncoder and getStructDecoder functions are available.