Module pgo_protocol

Data Types

error_field()

error_field() = severity | code | message | detail | hint | position | internal_position | internal_query | where | file | line | routine | schema | table | column | data_type | constraint | {unknown, byte()}

oid()

oid() = pos_integer()

pgsql_backend_message()

pgsql_backend_message() = #authentication_cleartext_password{} | #authentication_gss_continue{data = binary()} | #authentication_gss{} | #authentication_kerberos_v5{} | #authentication_md5_password{salt = binary()} | #authentication_ok{} | #authentication_scm_credential{} | #authentication_sspi{} | #backend_key_data{procid = pgsql_procid(), secret = integer()} | #bind_complete{} | #close_complete{} | #command_complete{command_tag = iodata()} | #copy_both_response{format = pgsql_format(), columns = non_neg_integer(), column_formats = [pgsql_format()]} | #copy_data{data = any()} | #copy_done{} | #copy_in_response{format = pgsql_format(), columns = non_neg_integer(), column_formats = [pgsql_format()]} | #copy_out_response{format = pgsql_format(), columns = non_neg_integer(), column_formats = [pgsql_format()]} | #data_row{values = [null | binary()]} | #empty_query_response{} | #error_response{fields = [pgsql_error:pgsql_error_and_mention_field()] | #{error_field() => binary()}} | #function_call_response{value = null | iodata()} | #no_data{} | #notice_response{fields = [pgsql_error:pgsql_error_and_mention_field()] | #{error_field() => binary()}} | #notification_response{procid = pgsql_procid(), channel = iodata(), payload = iodata()} | #parameter_description{count = non_neg_integer(), data_types = [oid()]} | #parameter_status{name = iodata(), value = iodata()} | #parse_complete{} | #portal_suspended{} | #ready_for_query{transaction_status = idle | transaction | error} | #row_description{count = non_neg_integer(), fields = [#row_description_field{name = iodata(), table_oid = oid(), attr_number = integer(), data_type_oid = oid(), data_type_size = integer(), type_modifier = integer(), format = pgsql_format()}]}

pgsql_format()

pgsql_format() = text | binary

pgsql_procid()

pgsql_procid() = integer()

Function Index

bind_requires_statement_description/1Determine if we need the statement description with these parameters.
decode_message/3Decode a message.
decode_row/4Decode a row format.
encode_bind_message/6Encode a bind message.
encode_cancel_message/2Encode a flush message.
encode_copy_data_message/1Encode a data segment of a COPY operation.
encode_copy_done/0Encode the end of a COPY operation.
encode_copy_fail/1Encode the cancellation of a COPY operation with the given failure message.
encode_describe_message/2Encode a describe message.
encode_execute_message/2Encode an execute message.
encode_flush_message/0Encode a flush message.
encode_parse_message/3Encode a parse message.
encode_password_message/1Encode a password.
encode_query_message/1Encode a query.
encode_ssl_request_message/0Encode the ssl request message.
encode_startup_message/1Encode the startup message.
encode_sync_message/0Encode a sync message.

Function Details

bind_requires_statement_description/1

bind_requires_statement_description(Tail::[any()]) -> boolean()

Determine if we need the statement description with these parameters. We currently only require statement descriptions if we have arrays of binaries.

decode_message/3

decode_message(Other::byte(), Payload::binary(), DecodeOpts::[pgo:decode_option()]) -> {ok, pgsql_backend_message()} | {error, any()}

Decode a message.

decode_row/4

decode_row(Descs::[#row_description_field{name = iodata(), table_oid = oid(), attr_number = integer(), data_type_oid = oid(), data_type_size = integer(), type_modifier = integer(), format = pgsql_format()}], Values::[binary()], OIDMap::atom(), DecodeOptions::proplists:proplist()) -> tuple()

Decode a row format.

encode_bind_message/6

encode_bind_message(PortalName::iodata(), StatementName::iodata(), Parameters::[any()], ParametersDataTypes::[oid()], OIDMap::atom(), IntegerDateTimes::boolean()) -> iolist()

Encode a bind message.

encode_cancel_message/2

encode_cancel_message(ProcID::integer(), Secret::integer()) -> binary()

Encode a flush message.

encode_copy_data_message/1

encode_copy_data_message(Message::iodata()) -> iolist()

Encode a data segment of a COPY operation

encode_copy_done/0

encode_copy_done() -> binary()

Encode the end of a COPY operation

encode_copy_fail/1

encode_copy_fail(ErrorMessage::iodata()) -> iolist()

Encode the cancellation of a COPY operation with the given failure message

encode_describe_message/2

encode_describe_message(PortalOrStatement::portal | statement, Name::iodata()) -> iolist()

Encode a describe message.

encode_execute_message/2

encode_execute_message(PortalName::iodata(), MaxRows::non_neg_integer()) -> iolist()

Encode an execute message.

encode_flush_message/0

encode_flush_message() -> binary()

Encode a flush message.

encode_parse_message/3

encode_parse_message(PreparedStatementName::iodata(), Query::iodata(), DataTypes::[oid()]) -> iolist()

Encode a parse message.

encode_password_message/1

encode_password_message(Password::iodata()) -> iolist()

Encode a password.

encode_query_message/1

encode_query_message(Query::iodata()) -> iolist()

Encode a query.

encode_ssl_request_message/0

encode_ssl_request_message() -> binary()

Encode the ssl request message.

encode_startup_message/1

encode_startup_message(Parameters::[{iodata(), iodata()}]) -> iolist()

Encode the startup message.

encode_sync_message/0

encode_sync_message() -> binary()

Encode a sync message.


Generated by EDoc