# VarIntReaderExtensions Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/)

## ReadInt16(Reader&lt;TInput&gt;, WireType) {#readint16-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializati-1deea97b}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readint16-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializati-1deea97b/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L169-L178)

```csharp
public static short ReadInt16<TInput>(this ref Reader<TInput> reader, WireType wireType)
```

Reads a variable-width `System.Int16`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.
- `wireType` (`WireType`): The wire type.

### Returns

A variable-width integer.

## ReadInt32(Reader&lt;TInput&gt;, WireType) {#readint32-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializati-1a62560a}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readint32-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializati-1a62560a/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L190-L195)

```csharp
public static int ReadInt32<TInput>(this ref Reader<TInput> reader, WireType wireType)
```

Reads a variable-width `System.Int32`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.
- `wireType` (`WireType`): The wire type.

### Returns

A variable-width integer.

## ReadInt64(Reader&lt;TInput&gt;, WireType) {#readint64-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializati-8d2cee34}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readint64-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializati-8d2cee34/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L217-L226)

```csharp
public static long ReadInt64<TInput>(this ref Reader<TInput> reader, WireType wireType)
```

Reads a variable-width `System.Int64`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.
- `wireType` (`WireType`): The wire type.

### Returns

A variable-width integer.

## ReadInt8(Reader&lt;TInput&gt;, WireType) {#readint8-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializatio-66d999fd}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readint8-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializatio-66d999fd/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L150-L159)

```csharp
public static sbyte ReadInt8<TInput>(this ref Reader<TInput> reader, WireType wireType)
```

Reads a variable-width `System.SByte`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.
- `wireType` (`WireType`): The wire type.

### Returns

A variable-width integer.

## ReadUInt16(Reader&lt;TInput&gt;, WireType) {#readuint16-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializat-691f1f09}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readuint16-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializat-691f1f09/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L93-L102)

```csharp
public static ushort ReadUInt16<TInput>(this ref Reader<TInput> reader, WireType wireType)
```

Reads a variable-width `System.UInt16`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.
- `wireType` (`WireType`): The wire type.

### Returns

A variable-width integer.

## ReadUInt32(Reader&lt;TInput&gt;, WireType) {#readuint32-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializat-e5646fc2}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readuint32-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializat-e5646fc2/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L112-L121)

```csharp
public static uint ReadUInt32<TInput>(this ref Reader<TInput> reader, WireType wireType)
```

Reads a variable-width `System.UInt32`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.
- `wireType` (`WireType`): The wire type.

### Returns

A variable-width integer.

## ReadUInt64(Reader&lt;TInput&gt;, WireType) {#readuint64-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializat-61e136c8}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readuint64-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializat-61e136c8/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L131-L140)

```csharp
public static ulong ReadUInt64<TInput>(this ref Reader<TInput> reader, WireType wireType)
```

Reads a variable-width `System.UInt64`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.
- `wireType` (`WireType`): The wire type.

### Returns

A variable-width integer.

## ReadUInt8(Reader&lt;TInput&gt;, WireType) {#readuint8-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializati-75e8d13d}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readuint8-1-this-orleans-serialization-buffers-reader-tinput-orleans-serializati-75e8d13d/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L74-L83)

```csharp
public static byte ReadUInt8<TInput>(this ref Reader<TInput> reader, WireType wireType)
```

Reads a variable-width `System.Byte`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.
- `wireType` (`WireType`): The wire type.

### Returns

A variable-width integer.

## ReadVarInt16(Reader&lt;TInput&gt;) {#readvarint16-1-this-orleans-serialization-buffers-reader-tinput-79bd6f54}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readvarint16-1-this-orleans-serialization-buffers-reader-tinput-79bd6f54/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L28)

```csharp
public static short ReadVarInt16<TInput>(this ref Reader<TInput> reader)
```

Reads a variable-width `System.UInt16`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.

### Returns

A variable-width integer.

## ReadVarInt32(Reader&lt;TInput&gt;) {#readvarint32-1-this-orleans-serialization-buffers-reader-tinput-f9926aa5}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readvarint32-1-this-orleans-serialization-buffers-reader-tinput-f9926aa5/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L55)

```csharp
public static int ReadVarInt32<TInput>(this ref Reader<TInput> reader)
```

Reads a variable-width `System.Int32`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.

### Returns

A variable-width integer.

## ReadVarInt64(Reader&lt;TInput&gt;) {#readvarint64-1-this-orleans-serialization-buffers-reader-tinput-fffb818d}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readvarint64-1-this-orleans-serialization-buffers-reader-tinput-fffb818d/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L64)

```csharp
public static long ReadVarInt64<TInput>(this ref Reader<TInput> reader)
```

Reads a variable-width `System.Int64`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.

### Returns

A variable-width integer.

## ReadVarInt8(Reader&lt;TInput&gt;) {#readvarint8-1-this-orleans-serialization-buffers-reader-tinput-a97b52e2}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readvarint8-1-this-orleans-serialization-buffers-reader-tinput-a97b52e2/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L19)

```csharp
public static sbyte ReadVarInt8<TInput>(this ref Reader<TInput> reader)
```

Reads a variable-width `System.SByte`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.

### Returns

A variable-width integer.

## ReadVarUInt16(Reader&lt;TInput&gt;) {#readvaruint16-1-this-orleans-serialization-buffers-reader-tinput-bce2659a}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readvaruint16-1-this-orleans-serialization-buffers-reader-tinput-bce2659a/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L46)

```csharp
public static ushort ReadVarUInt16<TInput>(this ref Reader<TInput> reader)
```

Reads a variable-width `System.UInt16`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.

### Returns

A variable-width integer.

## ReadVarUInt8(Reader&lt;TInput&gt;) {#readvaruint8-1-this-orleans-serialization-buffers-reader-tinput-fc0bcd8a}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.buffers.varintreaderextensions/methods/readvaruint8-1-this-orleans-serialization-buffers-reader-tinput-fc0bcd8a/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/VarIntReaderExtensions.cs#L37)

```csharp
public static byte ReadVarUInt8<TInput>(this ref Reader<TInput> reader)
```

Reads a variable-width `System.Byte`.

### Parameters

- `reader` (`Reader<TInput>`): The reader.

### Returns

A variable-width integer.
