-module(postgleam@codec@bit_string). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/postgleam/codec/bit_string.gleam"). -export([encode/1, decode/1, matcher/0]). -file("src/postgleam/codec/bit_string.gleam", 32). -spec encode(postgleam@value:value()) -> {ok, bitstring()} | {error, binary()}. encode(Val) -> case Val of {bit_string, Bit_count, Data} -> {ok, <>}; _ -> {error, <<"bit codec: expected BitString value"/utf8>>} end. -file("src/postgleam/codec/bit_string.gleam", 39). -spec decode(bitstring()) -> {ok, postgleam@value:value()} | {error, binary()}. decode(Data) -> case Data of <> -> {ok, {bit_string, Bit_count, Rest}}; _ -> {error, <<"bit codec: expected at least 4 bytes"/utf8>>} end. -file("src/postgleam/codec/bit_string.gleam", 22). -spec build(integer()) -> postgleam@codec:codec(). build(Type_oid) -> {codec, <<"bit"/utf8>>, Type_oid, binary, fun encode/1, fun decode/1}. -file("src/postgleam/codec/bit_string.gleam", 12). -spec matcher() -> postgleam@codec:codec_matcher(). matcher() -> {codec_matcher, <<"bit"/utf8>>, [1560, 1562], none, binary, fun build/1}.