View Source argo_block_decoders (argo v1.0.10)
Summary
Types
-type maybe_block_wire_type() :: argo_block_wire_type:t() | fun(() -> argo_block_wire_type:t()).
-type t() :: #argo_block_decoders{header :: argo_header:t(), core_popped :: boolean(), blocks :: queue:queue(binary()), inner :: argo_index_map:t(argo_types:name(), argo_block_decoder:t())}.
Functions
-spec decode_boolean(BlockDecoders, CoreReader) -> {BlockDecoders, CoreReader, Value} when BlockDecoders :: t(), CoreReader :: argo_core_reader:t(), Value :: boolean().
-spec decode_bytes(BlockDecoders, CoreReader) -> {BlockDecoders, CoreReader, Value} when BlockDecoders :: t(), CoreReader :: argo_core_reader:t(), Value :: binary().
-spec decode_fixed(BlockDecoders, CoreReader, Length) -> {BlockDecoders, CoreReader, Value} when BlockDecoders :: t(), CoreReader :: argo_core_reader:t(), Length :: argo_types:length(), Value :: binary().
-spec decode_float64(BlockDecoders, CoreReader) -> {BlockDecoders, CoreReader, Value} when BlockDecoders :: t(), CoreReader :: argo_core_reader:t(), Value :: float().
Link to this function
decode_scalar_with_key(BlockDecoders, CoreReader, Key, MaybeBlockWireType)
View Source-spec decode_scalar_with_key(BlockDecoders, CoreReader, Key, MaybeBlockWireType) -> {BlockDecoders, CoreReader, ScalarValue} when BlockDecoders :: t(), CoreReader :: argo_core_reader:t(), Key :: argo_types:name(), MaybeBlockWireType :: maybe_block_wire_type(), ScalarValue :: argo_scalar_value:t().
-spec decode_string(BlockDecoders, CoreReader) -> {BlockDecoders, CoreReader, Value} when BlockDecoders :: t(), CoreReader :: argo_core_reader:t(), Value :: unicode:unicode_binary().
-spec decode_varint(BlockDecoders, CoreReader) -> {BlockDecoders, CoreReader, Value} when BlockDecoders :: t(), CoreReader :: argo_core_reader:t(), Value :: argo_types:i64().
-spec new(Header) -> BlockDecoders when Header :: argo_header:t(), BlockDecoders :: t().
-spec pop_core(BlockDecoders) -> {BlockDecoders, none | {some, CoreReader}} when BlockDecoders :: t(), CoreReader :: argo_core_reader:t().