AvroParser
using System;
using System.Collections.Generic;
using System.IO;
using System.Runtime.CompilerServices;
using System.Text.Json;
using System.Threading;
using System.Threading.Tasks;
namespace Azure.Storage.Internal.Avro
{
internal static class AvroParser
{
[AsyncStateMachine(typeof(<ReadFixedBytesAsync>d__0))]
public static Task<byte[]> ReadFixedBytesAsync(Stream stream, int length, bool async, CancellationToken cancellationToken)
{
<ReadFixedBytesAsync>d__0 stateMachine = default(<ReadFixedBytesAsync>d__0);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<byte[]>.Create();
stateMachine.stream = stream;
stateMachine.length = length;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<ReadByteAsync>d__1))]
private static Task<byte> ReadByteAsync(Stream stream, bool async, CancellationToken cancellationToken)
{
<ReadByteAsync>d__1 stateMachine = default(<ReadByteAsync>d__1);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<byte>.Create();
stateMachine.stream = stream;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<ReadZigZagLongAsync>d__2))]
private static Task<long> ReadZigZagLongAsync(Stream stream, bool async, CancellationToken cancellationToken)
{
<ReadZigZagLongAsync>d__2 stateMachine = default(<ReadZigZagLongAsync>d__2);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<long>.Create();
stateMachine.stream = stream;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
public static Task<object> ReadNullAsync()
{
return Task.FromResult<object>(null);
}
[AsyncStateMachine(typeof(<ReadBoolAsync>d__4))]
public static Task<bool> ReadBoolAsync(Stream stream, bool async, CancellationToken cancellationToken)
{
<ReadBoolAsync>d__4 stateMachine = default(<ReadBoolAsync>d__4);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<bool>.Create();
stateMachine.stream = stream;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<ReadLongAsync>d__5))]
public static Task<long> ReadLongAsync(Stream stream, bool async, CancellationToken cancellationToken)
{
<ReadLongAsync>d__5 stateMachine = default(<ReadLongAsync>d__5);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<long>.Create();
stateMachine.stream = stream;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<ReadIntAsync>d__6))]
public static Task<int> ReadIntAsync(Stream stream, bool async, CancellationToken cancellationToken)
{
<ReadIntAsync>d__6 stateMachine = default(<ReadIntAsync>d__6);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<int>.Create();
stateMachine.stream = stream;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<ReadFloatAsync>d__7))]
public static Task<float> ReadFloatAsync(Stream stream, bool async, CancellationToken cancellationToken)
{
<ReadFloatAsync>d__7 stateMachine = default(<ReadFloatAsync>d__7);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<float>.Create();
stateMachine.stream = stream;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<ReadDoubleAsync>d__8))]
public static Task<double> ReadDoubleAsync(Stream stream, bool async, CancellationToken cancellationToken)
{
<ReadDoubleAsync>d__8 stateMachine = default(<ReadDoubleAsync>d__8);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<double>.Create();
stateMachine.stream = stream;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<ReadBytesAsync>d__9))]
public static Task<byte[]> ReadBytesAsync(Stream stream, bool async, CancellationToken cancellationToken)
{
<ReadBytesAsync>d__9 stateMachine = default(<ReadBytesAsync>d__9);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<byte[]>.Create();
stateMachine.stream = stream;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<ReadStringAsync>d__10))]
public static Task<string> ReadStringAsync(Stream stream, bool async, CancellationToken cancellationToken)
{
<ReadStringAsync>d__10 stateMachine = default(<ReadStringAsync>d__10);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<string>.Create();
stateMachine.stream = stream;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<ReadMapPairAsync>d__11<>))]
private static Task<KeyValuePair<string, T>> ReadMapPairAsync<T>(Stream stream, Func<Stream, bool, CancellationToken, Task<T>> parseItemAsync, bool async, CancellationToken cancellationToken)
{
<ReadMapPairAsync>d__11<T> stateMachine = default(<ReadMapPairAsync>d__11<T>);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<KeyValuePair<string, T>>.Create();
stateMachine.stream = stream;
stateMachine.parseItemAsync = parseItemAsync;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<ReadMapAsync>d__12<>))]
public static Task<Dictionary<string, T>> ReadMapAsync<T>(Stream stream, Func<Stream, bool, CancellationToken, Task<T>> parseItemAsync, bool async, CancellationToken cancellationToken)
{
<ReadMapAsync>d__12<T> stateMachine = default(<ReadMapAsync>d__12<T>);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<Dictionary<string, T>>.Create();
stateMachine.stream = stream;
stateMachine.parseItemAsync = parseItemAsync;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<ReadArrayAsync>d__13<>))]
private static Task<IEnumerable<T>> ReadArrayAsync<T>(Stream stream, Func<Stream, bool, CancellationToken, Task<T>> parseItemAsync, bool async, CancellationToken cancellationToken)
{
<ReadArrayAsync>d__13<T> stateMachine = default(<ReadArrayAsync>d__13<T>);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<IEnumerable<T>>.Create();
stateMachine.stream = stream;
stateMachine.parseItemAsync = parseItemAsync;
stateMachine.async = async;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
internal static List<T> Map<T>(this JsonElement array, Func<JsonElement, T> selector)
{
List<T> list = new List<T>();
foreach (JsonElement item in array.EnumerateArray()) {
list.Add(selector(item));
}
return list;
}
internal static Dictionary<string, T> ToDictionary<T>(this IEnumerable<KeyValuePair<string, T>> values)
{
Dictionary<string, T> dictionary = new Dictionary<string, T>();
foreach (KeyValuePair<string, T> value in values) {
dictionary[value.Key] = value.Value;
}
return dictionary;
}
}
}