Operator alias for flatZip.
Operator alias for flatZip.
Returns a new codec that encodes/decodes a value of type B by using an iso between A and B.
Returns a new codec that encodes/decodes a value of type B by using an iso between A and B.
Attempts to decode a value of type A from the specified bit vector.
Attempts to decode a value of type A from the specified bit vector.
Attempts to encode the specified value in to a bit vector.
Attempts to encode the specified value in to a bit vector.
Returns a new codec that encodes/decodes a value of type (A, B) where the codec of B is dependent on A.
Returns a new codec that encodes/decodes a value of type (A, B) where the codec of B is dependent on A.
Lifts this codec in to a codec of a singleton hlist, which allows easy binding to case classes of one argument.
Lifts this codec in to a codec of a singleton hlist, which allows easy binding to case classes of one argument.
Maps to a codec of type B.
Maps to a codec of type B.
Codec that includes a signature of the encoded bits.
Encoding a value of type A is delegated to the specified codec and then a signature of those bits is appended using the specified signature factory to perform signing.
Decoding first decodes using the specified codec and then all of the remaining bits are treated as the signature of the decoded bits. The signature is verified and if it fails to verify, an error is returned.
Note: because decoding is first delegated to the specified code, care must be taken to ensure that codec does not consume the signature bits. For example, if the target codec is an unbounded string (e.g., ascii, utf8), decoding an encoded vector will result in the string codec trying to decode the signature bits as part of the string.