infrastructure/native/protocol/param_value library

Classes

ParamValue
Base class for parameter values in prepared statements.
ParamValueBinary
Represents a binary parameter value.
ParamValueDecimal
Represents a decimal/numeric parameter value as a string.
ParamValueInt32
Represents a 32-bit integer parameter value.
ParamValueInt64
Represents a 64-bit integer parameter value.
ParamValueNull
Represents a NULL parameter value.
ParamValueRefCursorOut
Placeholder for Oracle SYS_REFCURSOR (and similar) OUT parameters on the DRT1 wire. Payload length is always zero; materialized row sets use the native RC1\0 trailer. Engine bind is not yet available for all drivers (see TYPE_MAPPING §3.1.1).
ParamValueString
Represents a string parameter value.
SqlDataType
Explicit SQL data types for optional typed parameter API.
SqlTypedValue
Explicitly typed parameter value.

Functions

deserializeParamValue(Uint8List data, {int offset = 0}) → ({int consumed, ParamValue value})
Deserialises a single ParamValue from data starting at offset (mirrors ParamValue::deserialize in the Rust engine). Returns the value and the number of bytes consumed.
deserializeParamValues(Uint8List data) List<ParamValue>
Deserialises every ParamValue in a legacy buffer (concatenated encodings, no DRT1 header).
paramValuesFromObjects(List<Object?> params) List<ParamValue>
Converts a list of objects to ParamValue instances.
serializeParams(List<ParamValue> params) Uint8List
Serializes a list of parameter values to binary format.
toParamValue(Object? value) ParamValue
Converts a single object to a ParamValue instance.
typedParam(SqlDataType type, Object? value) SqlTypedValue
Convenience helper to create SqlTypedValue instances.