Description
Append_Byte
procedure Append_Byte
(Target : in out Flyology.Bytes.Unbounded_Bytes; Value : Byte)
Parameters
- Target
- Value
Append_Bytes
procedure Append_Bytes
(Target : in out Flyology.Bytes.Unbounded_Bytes; Value : Byte_Array)
Parameters
- Target
- Value
Append_C_String
procedure Append_C_String
(Target : in out Flyology.Bytes.Unbounded_Bytes; Value : String)
Parameters
- Target
- Value
Append_U16
procedure Append_U16
(Target : in out Flyology.Bytes.Unbounded_Bytes; Value : UInt16)
Parameters
- Target
- Value
Append_U32
procedure Append_U32
(Target : in out Flyology.Bytes.Unbounded_Bytes; Value : UInt32)
Parameters
- Target
- Value
Backend_Message
type Backend_Message (Response : Backend_Message_Kind := Unknown_Response)
is private;
Decode supported backend payloads strictly while retaining Item for raw access through Original_Message. Unknown tags remain Unknown_Response.
Record fields
- Response
Backend_Message_Kind
type Backend_Message_Kind is
(Row_Description_Response,
Data_Row_Response,
Command_Complete_Response,
Empty_Query_Response,
Error_Response,
Notice_Response,
Parameter_Status_Response,
Parse_Complete_Response,
…,
Unknown_Response);
Enumeration literals
- Row_Description_Response
- Data_Row_Response
- Command_Complete_Response
- Empty_Query_Response
- Error_Response
- Notice_Response
- Parameter_Status_Response
- Parse_Complete_Response
- Bind_Complete_Response
- Close_Complete_Response
- Parameter_Description_Response
- No_Data_Response
- Portal_Suspended_Response
- Copy_In_Response
- Copy_Out_Response
- Copy_Both_Response
- Copy_Data_Response
- Copy_Done_Response
- Ready_For_Query_Response
- Unknown_Response
Binary_Column
function Binary_Column (Value : Byte_Array) return Column_Value
Parameters
- Value
Return value
Binary_Parameter
function Binary_Parameter (Value : Byte_Array) return Bind_Parameter
Parameters
- Value
Return value
Bind_Parameter
type Bind_Parameter is private;
Bind_Parameter_Array
type Bind_Parameter_Array is
array (Positive range <>) of Bind_Parameter;
Byte
subtype Byte is Ada.Streams.Stream_Element;
Byte_Array
subtype Byte_Array is Ada.Streams.Stream_Element_Array;
Byte_Offset
subtype Byte_Offset is Ada.Streams.Stream_Element_Offset;
Code
function Code (Item : Message) return Character
Parameters
- Item
Return value
Column_At
function Column_At
(Item : Data_Row; Index : Positive) return Column_Value
Parameters
- Item
- Index
Return value
Column_Attribute_Number
function Column_Attribute_Number
(Item : Field_Description) return Int16
Parameters
- Item
Return value
Column_Bytes
function Column_Bytes (Item : Column_Value) return Byte_Array
Parameters
- Item
Return value
Column_Count
function Column_Count (Item : Data_Row) return Natural
Parameters
- Item
Return value
Column_Text
function Column_Text (Item : Column_Value) return String
Parameters
- Item
Return value
Column_Value
type Column_Value is private;
Column_Value_Array
type Column_Value_Array is array (Positive range <>) of Column_Value;
Completion_Tag
function Completion_Tag (Item : Backend_Message) return String
Parameters
- Item
Return value
Copy_Bytes
function Copy_Bytes (Item : Frontend_Copy_Message) return Byte_Array
Parameters
- Item
Return value
Copy_Column_Count
function Copy_Column_Count
(Item : Copy_Format_Description) return Natural
Parameters
- Item
Return value
Copy_Column_Format
function Copy_Column_Format
(Item : Copy_Format_Description; Index : Positive) return Field_Format
Parameters
- Item
- Index
Return value
Copy_Data
function Copy_Data (Item : Backend_Message) return Byte_Array
Parameters
- Item
Return value
Copy_Failure_Reason
function Copy_Failure_Reason (Item : Frontend_Copy_Message) return String
Parameters
- Item
Return value
Copy_Format_Description
type Copy_Format_Description is private;
Copy_Formats
function Copy_Formats
(Item : Backend_Message) return Copy_Format_Description
Parameters
- Item
Return value
Copy_Kind
function Copy_Kind
(Item : Frontend_Copy_Message) return Frontend_Copy_Kind
Parameters
- Item
Return value
Data_Row
type Data_Row is private;
Decode_Backend
function Decode_Backend (Item : Message) return Backend_Message
Parameters
- Item
Return value
Decode_Frontend_Copy
function Decode_Frontend_Copy
(Item : Message) return Frontend_Copy_Message
Parameters
- Item
Return value
Decode_Initial
function Decode_Initial (Contents : Byte_Array) return Initial_Request
Parameters
- Contents
Return value
Description
function Description (Item : Backend_Message) return Row_Description
Parameters
- Item
Return value
Diagnostic
type Diagnostic is private;
Diagnostic_Data
function Diagnostic_Data (Item : Backend_Message) return Diagnostic
Parameters
- Item
Return value
Diagnostic_Message
function Diagnostic_Message (Item : Diagnostic) return String
Parameters
- Item
Return value
Diagnostic_SQL_State
function Diagnostic_SQL_State (Item : Diagnostic) return String
Parameters
- Item
Return value
Encode
function Encode (Item : Message) return Byte_Array
Parameters
- Item
Return value
Encode_Cancel_Request
function Encode_Cancel_Request
(Process_Id : UInt32; Secret_Key : Byte_Array) return Byte_Array
Parameters
- Process_Id
- Secret_Key
Return value
Encode_SSL_Request
function Encode_SSL_Request return Byte_Array
Return value
Encode_Startup
function Encode_Startup
(User : String;
Database : String := "";
Application_Name : String := "flyology_postgres";
Protocol_Major : UInt16 := 3;
Protocol_Minor : UInt16 := 0) return Byte_Array
Parameters
- User
- Database
- Application_Name
- Protocol_Major
- Protocol_Minor
Return value
Field_At
function Field_At
(Item : Row_Description; Index : Positive) return Field_Description
Parameters
- Item
- Index
Return value
Field_Count
function Field_Count (Item : Row_Description) return Natural
Parameters
- Item
Return value
Field_Description
type Field_Description is private;
Field_Description_Array
type Field_Description_Array is
array (Positive range <>) of Field_Description;
Field_Format
type Field_Format is (Text_Format, Binary_Format);
Enumeration literals
- Text_Format
- Binary_Format
Field_Format_Array
type Field_Format_Array is array (Positive range <>) of Field_Format;
Field_Name
function Field_Name (Item : Field_Description) return String
Parameters
- Item
Return value
Field_Text
function Field_Text
(Item : Diagnostic; Code : Character) return String
Parameters
- Item
- Code
Return value
Format
function Format (Item : Field_Description) return Field_Format
Parameters
- Item
Return value
Frontend_Copy_Kind
type Frontend_Copy_Kind is
(Frontend_Copy_Data, Frontend_Copy_Done, Frontend_Copy_Fail);
Enumeration literals
- Frontend_Copy_Data
- Frontend_Copy_Done
- Frontend_Copy_Fail
Frontend_Copy_Message
type Frontend_Copy_Message is private;
Frontend_Kind
type Frontend_Kind is
(Bind,
Close,
Copy_Data,
Copy_Done,
Copy_Fail,
Describe,
Execute,
Flush,
…,
Unknown);
Enumeration literals
- Bind
- Close
- Copy_Data
- Copy_Done
- Copy_Fail
- Describe
- Execute
- Flush
- Function_Call
- Password_Or_SASL_Response
- Parse
- Query
- Sync
- Terminate_Command
- Unknown
Initial_Kind
type Initial_Kind is
(Startup, SSL_Request, GSS_Request, Cancel_Request, Unknown_Initial);
Enumeration literals
- Startup
- SSL_Request
- GSS_Request
- Cancel_Request
- Unknown_Initial
Initial_Request
type Initial_Request is private;
Int16
subtype Int16 is Interfaces.Integer_16;
Int32
subtype Int32 is Interfaces.Integer_32;
Is_Null
function Is_Null (Item : Bind_Parameter) return Boolean
Parameters
- Item
Return value
Is_Null
function Is_Null (Item : Column_Value) return Boolean
Parameters
- Item
Return value
Kind
function Kind (Item : Initial_Request) return Initial_Kind
Parameters
- Item
Return value
Kind
function Kind (Item : Message) return Frontend_Kind
Parameters
- Item
Return value
Make_Bind_Message
function Make_Bind_Message
(Portal_Name : String;
Statement_Name : String;
Parameters : Bind_Parameter_Array := No_Parameters;
Result_Formats : Field_Format_Array := No_Formats) return Message
Parameters
- Portal_Name
- Statement_Name
- Parameters
- Result_Formats
Return value
Make_Close_Message
function Make_Close_Message
(Object_Type : Object_Kind; Name : String) return Message
Parameters
- Object_Type
- Name
Return value
Make_Copy_Data_Message
function Make_Copy_Data_Message (Data : Byte_Array) return Message
Parameters
- Data
Return value
Make_Copy_Done_Message
function Make_Copy_Done_Message return Message
Return value
Make_Copy_Fail_Message
function Make_Copy_Fail_Message (Reason : String) return Message
Parameters
- Reason
Return value
Make_Describe_Message
function Make_Describe_Message
(Object_Type : Object_Kind; Name : String) return Message
Parameters
- Object_Type
- Name
Return value
Make_Empty_Message
function Make_Empty_Message (Code : Character) return Message
Parameters
- Code
Return value
Make_Execute_Message
function Make_Execute_Message
(Portal_Name : String; Maximum_Rows : Row_Limit := 0) return Message
Parameters
- Portal_Name
- Maximum_Rows
Return value
Make_Field_Description
function Make_Field_Description
(Name : String;
Table_Oid : UInt32 := 0;
Column_Attribute_Number : Int16 := 0;
Type_Oid : UInt32 := 25;
Type_Size : Int16 := -1;
Type_Modifier : Int32 := -1;
Format : Field_Format := Text_Format)
return Field_Description
Parameters
- Name
- Table_Oid
- Column_Attribute_Number
- Type_Oid
- Type_Size
- Type_Modifier
- Format
Return value
Make_Flush_Message
function Make_Flush_Message return Message
Return value
Make_Message
function Make_Message
(Code : Character; Payload : Byte_Array) return Message
Parameters
- Code
- Payload
Return value
Make_Parse_Message
function Make_Parse_Message
(Statement_Name : String;
SQL : String;
Parameter_Types : Oid_Array := No_Oids) return Message
Parameters
- Statement_Name
- SQL
- Parameter_Types
Return value
Make_Sync_Message
function Make_Sync_Message return Message
Return value
Maximum_Message_Size
Maximum_Message_Size : constant := Flyology.Postgres.Maximum_Message_Size;
Message
type Message is private;
No_Formats
No_Formats : constant Field_Format_Array (1 .. 0) :=
(others => Text_Format);
No_Oids
No_Oids : constant Oid_Array (1 .. 0) := (others => 0);
No_Parameters
No_Parameters : constant Bind_Parameter_Array (1 .. 0);
Nonlocalized_Severity
function Nonlocalized_Severity (Item : Diagnostic) return String
Parameters
- Item
Return value
Null_Column
Null_Column : constant Column_Value;
Null_Parameter
function Null_Parameter
(Format : Field_Format := Text_Format) return Bind_Parameter
Parameters
- Format
Return value
Object_Kind
type Object_Kind is (Statement_Object, Portal_Object);
Enumeration literals
- Statement_Object
- Portal_Object
Oid_Array
type Oid_Array is array (Positive range <>) of UInt32;
Original_Message
function Original_Message (Item : Backend_Message) return Message
Parameters
- Item
Return value
Original_Message
function Original_Message (Item : Frontend_Copy_Message) return Message
Parameters
- Item
Return value
Overall_Format
function Overall_Format
(Item : Copy_Format_Description) return Field_Format
Parameters
- Item
Return value
Parameter_Bytes
function Parameter_Bytes (Item : Bind_Parameter) return Byte_Array
Parameters
- Item
Return value
Parameter_Count
function Parameter_Count (Item : Parameter_Description) return Natural
Parameters
- Item
Return value
Parameter_Data
function Parameter_Data (Item : Backend_Message) return Parameter_Status
Parameters
- Item
Return value
Parameter_Description
type Parameter_Description is private;
Parameter_Format
function Parameter_Format (Item : Bind_Parameter) return Field_Format
Parameters
- Item
Return value
Parameter_Name
function Parameter_Name (Item : Parameter_Status) return String
Parameters
- Item
Return value
Parameter_Status
type Parameter_Status is private;
Parameter_Type_At
function Parameter_Type_At
(Item : Parameter_Description; Index : Positive) return UInt32
Parameters
- Item
- Index
Return value
Parameter_Types
function Parameter_Types
(Item : Backend_Message) return Parameter_Description
Parameters
- Item
Return value
Parameter_Value
function Parameter_Value (Item : Parameter_Status) return String
Parameters
- Item
Return value
Payload
function Payload (Item : Message) return Byte_Array
Parameters
- Item
Return value
Payload_Length
function Payload_Length (Item : Message) return Natural
Parameters
- Item
Return value
Process_Id
function Process_Id (Item : Initial_Request) return UInt32
Parameters
- Item
Return value
Protocol_Error
Protocol_Error : exception;
Read_C_String
function Read_C_String
(Source : Byte_Array; Cursor : in out Byte_Offset) return String
Parameters
- Source
- Cursor
Return value
Read_U16
function Read_U16
(Source : Byte_Array; Cursor : in out Byte_Offset) return UInt16
Parameters
- Source
- Cursor
Return value
Read_U32
function Read_U32
(Source : Byte_Array; Cursor : in out Byte_Offset) return UInt32
Parameters
- Source
- Cursor
Return value
Response_Kind
function Response_Kind (Item : Backend_Message) return Backend_Message_Kind
Parameters
- Item
Return value
Row_Data
function Row_Data (Item : Backend_Message) return Data_Row
Parameters
- Item
Return value
Row_Description
type Row_Description is private;
Row_Limit
subtype Row_Limit is Int32 range 0 .. Int32'Last;
Secret_Key
function Secret_Key (Item : Initial_Request) return Byte_Array
Parameters
- Item
Return value
Severity
function Severity (Item : Diagnostic) return String
Parameters
- Item
Return value
Startup_Data
function Startup_Data
(Item : Initial_Request) return Startup_Information
Parameters
- Item
Return value
Startup_Information
type Startup_Information is record
Protocol_Major : UInt16 := 3;
Protocol_Minor : UInt16 := 0;
User : Ada.Strings.Unbounded.Unbounded_String;
Database : Ada.Strings.Unbounded.Unbounded_String;
Application_Name : Ada.Strings.Unbounded.Unbounded_String;
end record;
Record fields
- Protocol_Major
- Protocol_Minor
- User
- Database
- Application_Name
Table_Oid
function Table_Oid (Item : Field_Description) return UInt32
Parameters
- Item
Return value
Text_Column
function Text_Column (Value : String) return Column_Value
Parameters
- Value
Return value
Text_Parameter
function Text_Parameter (Value : String) return Bind_Parameter
Parameters
- Value
Return value
Transaction_State
function Transaction_State
(Item : Backend_Message) return Transaction_Status
Parameters
- Item
Return value
Transaction_Status
type Transaction_Status is
(Idle, In_Transaction, Failed_Transaction);
Enumeration literals
- Idle
- In_Transaction
- Failed_Transaction
Type_Modifier
function Type_Modifier (Item : Field_Description) return Int32
Parameters
- Item
Return value
Type_Oid
function Type_Oid (Item : Field_Description) return UInt32
Parameters
- Item
Return value
Type_Size
function Type_Size (Item : Field_Description) return Int16
Parameters
- Item
Return value
UInt16
subtype UInt16 is Interfaces.Unsigned_16;
UInt32
subtype UInt32 is Interfaces.Unsigned_32;