Korero – Rev 1
?pathlinks?
using System.Collections.Generic;
using System.Linq;
namespace Korero.Serialization
{
public static class Extensions
{
#region Public Methods
///////////////////////////////////////////////////////////////////////////
// Copyright (C) 2015 Wizardry and Steamworks - License: GNU GPLv3 //
///////////////////////////////////////////////////////////////////////////
/// <summary>
/// Converts successive comma-separated values to key-value pairs.
/// </summary>
/// <returns>key-value pairs of successive comma-separate values</returns>
public static IEnumerable<KeyValuePair<string, string>> ToKeyValue(this CSV csv)
{
foreach (var kvp in csv.Select((o, p) => new {o, p})
.GroupBy(q => q.p / 2, q => q.o))
{
var kv = kvp.ToArray();
if (kv.Length != 2)
{
break;
}
var k = kv[0];
if (string.IsNullOrEmpty(k))
{
continue;
}
var v = kv[1];
yield return new KeyValuePair<string, string>(k, v);
}
}
#endregion
}
}
Generated by GNU Enscript 1.6.5.90.