示例#1
0
        public override async ValueTask <NpgsqlRange <TElement>[]> Read(
            NpgsqlReadBuffer buf, int len, bool async, FieldDescription?fieldDescription = null)
        {
            await buf.Ensure(4, async);

            var numRanges  = buf.ReadInt32();
            var multirange = new NpgsqlRange <TElement> [numRanges];

            for (var i = 0; i < numRanges; i++)
            {
                await buf.Ensure(4, async);

                var rangeLen = buf.ReadInt32();
                multirange[i] = await _rangeHandler.Read(buf, rangeLen, async, fieldDescription);
            }

            return(multirange);
        }