getStructEncoder
Call Signature
getStructEncoder<
TFields
>(fields
):FixedSizeEncoder
<DrainOuterGeneric
<{ [I in never as TFields[I][0]]: TFields[I][1] extends Encoder<TFrom> ? TFrom : never }
>>
Returns an encoder for custom objects.
This encoder serializes an object by encoding its fields sequentially, using the provided field encoders.
For more details, see getStructCodec.
Type Parameters
Type Parameter | Description |
---|---|
TFields extends Fields <FixedSizeEncoder <any >> | The fields of the struct, each paired with an encoder. |
Parameters
Parameter | Type | Description |
---|---|---|
fields | TFields | The name and encoder of each field. |
Returns
FixedSizeEncoder
<DrainOuterGeneric
<{ [I in never as TFields[I][0]]: TFields[I][1] extends Encoder<TFrom> ? TFrom : never }
>>
A FixedSizeEncoder
or VariableSizeEncoder
for encoding custom objects.
Example
Encoding a custom struct.
See
Call Signature
getStructEncoder<
TFields
>(fields
):VariableSizeEncoder
<DrainOuterGeneric
<{ [I in never as TFields[I][0]]: TFields[I][1] extends Encoder<TFrom> ? TFrom : never }
>>
Returns an encoder for custom objects.
This encoder serializes an object by encoding its fields sequentially, using the provided field encoders.
For more details, see getStructCodec.
Type Parameters
Type Parameter | Description |
---|---|
TFields extends Fields <Encoder <any >> | The fields of the struct, each paired with an encoder. |
Parameters
Parameter | Type | Description |
---|---|---|
fields | TFields | The name and encoder of each field. |
Returns
VariableSizeEncoder
<DrainOuterGeneric
<{ [I in never as TFields[I][0]]: TFields[I][1] extends Encoder<TFrom> ? TFrom : never }
>>
A FixedSizeEncoder
or VariableSizeEncoder
for encoding custom objects.
Example
Encoding a custom struct.