# Class PgReader

Namespace
  Npgsql.Internal

Assembly
  Npgsql.dll

    [Experimental("NPG9001")]
    public class PgReader

Inheritance
  object
  PgReader

Inherited Members
  object.Equals(object)
  object.Equals(object, object)
  object.GetHashCode()
  object.GetType()
  object.MemberwiseClone()
  object.ReferenceEquals(object, object)
  object.ToString()

## Properties

### Current

    public ValueMetadata Current { get; }

#### Property Value

ValueMetadata

### CurrentRemaining

    public int CurrentRemaining { get; }

#### Property Value

int

### IsResumed

    public bool IsResumed { get; }

#### Property Value

bool

## Methods

### BeginNestedRead(int, Size)

    public NestedReadScope BeginNestedRead(int size, Size bufferRequirement)

#### Parameters

`size` int
`bufferRequirement` Size

#### Returns

NestedReadScope

### BeginNestedReadAsync(int, Size, CancellationToken)

    public ValueTask<NestedReadScope> BeginNestedReadAsync(int size, Size bufferRequirement, CancellationToken cancellationToken = default)

#### Parameters

`size` int
`bufferRequirement` Size
`cancellationToken` CancellationToken

#### Returns

ValueTask<NestedReadScope>

### Buffer(Size)

    public void Buffer(Size bufferRequirement)

#### Parameters

`bufferRequirement` Size

### Buffer(int)

    public void Buffer(int byteCount)

#### Parameters

`byteCount` int

### BufferAsync(Size, CancellationToken)

    public ValueTask BufferAsync(Size bufferRequirement, CancellationToken cancellationToken)

#### Parameters

`bufferRequirement` Size
`cancellationToken` CancellationToken

#### Returns

ValueTask

### BufferAsync(int, CancellationToken)

    public ValueTask BufferAsync(int byteCount, CancellationToken cancellationToken)

#### Parameters

`byteCount` int
`cancellationToken` CancellationToken

#### Returns

ValueTask

### Consume(int?)

    public void Consume(int? count = null)

#### Parameters

`count` int?

### ConsumeAsync(int?, CancellationToken)

    public ValueTask ConsumeAsync(int? count = null, CancellationToken cancellationToken = default)

#### Parameters

`count` int?
`cancellationToken` CancellationToken

#### Returns

ValueTask

### GetStream(int?)

    public Stream GetStream(int? length = null)

#### Parameters

`length` int?

#### Returns

Stream

### GetTextReader(Encoding)

    public TextReader GetTextReader(Encoding encoding)

#### Parameters

`encoding` Encoding

#### Returns

TextReader

### GetTextReaderAsync(Encoding, CancellationToken)

    public ValueTask<TextReader> GetTextReaderAsync(Encoding encoding, CancellationToken cancellationToken)

#### Parameters

`encoding` Encoding
`cancellationToken` CancellationToken

#### Returns

ValueTask<TextReader>

### Read(Span<byte>)

    public void Read(Span<byte> destination)

#### Parameters

`destination` Span<byte>

### ReadByte()

    public byte ReadByte()

#### Returns

byte

### ReadBytes(int)

    public ReadOnlySequence<byte> ReadBytes(int count)

#### Parameters

`count` int

#### Returns

ReadOnlySequence<byte>

### ReadBytes(Span<byte>)

    public void ReadBytes(Span<byte> buffer)

#### Parameters

`buffer` Span<byte>

### ReadBytesAsync(int, CancellationToken)

    public ValueTask<ReadOnlySequence<byte>> ReadBytesAsync(int count, CancellationToken cancellationToken = default)

#### Parameters

`count` int
`cancellationToken` CancellationToken

#### Returns

ValueTask<ReadOnlySequence<byte>>

### ReadBytesAsync(Memory<byte>, CancellationToken)

    public ValueTask ReadBytesAsync(Memory<byte> buffer, CancellationToken cancellationToken = default)

#### Parameters

`buffer` Memory<byte>
`cancellationToken` CancellationToken

#### Returns

ValueTask

### ReadDouble()

    public double ReadDouble()

#### Returns

double

### ReadFloat()

    public float ReadFloat()

#### Returns

float

### ReadInt16()

    public short ReadInt16()

#### Returns

short

### ReadInt32()

    public int ReadInt32()

#### Returns

int

### ReadInt64()

    public long ReadInt64()

#### Returns

long

### ReadNullTerminatedString(Encoding)

    public string ReadNullTerminatedString(Encoding encoding)

#### Parameters

`encoding` Encoding

#### Returns

string

### ReadNullTerminatedStringAsync(Encoding, CancellationToken)

    public ValueTask<string> ReadNullTerminatedStringAsync(Encoding encoding, CancellationToken cancellationToken = default)

#### Parameters

`encoding` Encoding
`cancellationToken` CancellationToken

#### Returns

ValueTask<string>

### ReadUInt16()

    public ushort ReadUInt16()

#### Returns

ushort

### ReadUInt32()

    public uint ReadUInt32()

#### Returns

uint

### ReadUInt64()

    public ulong ReadUInt64()

#### Returns

ulong

### Rewind(int)

    public void Rewind(int count)

#### Parameters

`count` int

### ShouldBuffer(Size)

    public bool ShouldBuffer(Size bufferRequirement)

#### Parameters

`bufferRequirement` Size

#### Returns

bool

### ShouldBuffer(int)

    public bool ShouldBuffer(int byteCount)

#### Parameters

`byteCount` int

#### Returns

bool

### TryReadBytes(int, out ReadOnlyMemory<byte>)

    public bool TryReadBytes(int count, out ReadOnlyMemory<byte> bytes)

#### Parameters

`count` int
`bytes` ReadOnlyMemory<byte>

#### Returns

bool

### TryReadBytes(int, out ReadOnlySpan<byte>)

    public bool TryReadBytes(int count, out ReadOnlySpan<byte> bytes)

#### Parameters

`count` int
`bytes` ReadOnlySpan<byte>

#### Returns

bool