Exemplo n.º 1
0
        RiderFlairContainer ParseFlairs(string flairs)
        {
            var bits = flairs.Split(':');

            if (bits.Length == 1)
            {
                return(new RiderFlairContainer
                {
                    PreflairWhitepace = flairs,
                    Flairs = new List <RiderFlair>(),
                    PostflairWhitepace = ""
                });
            }

            var resultFlairs = new List <RiderFlair>();

            for (var i = 1; i < bits.Length - 1; i += 2)
            {
                resultFlairs.Add(new RiderFlair(bits[i])
                {
                    WhitespaceAfter = bits[i + 1]
                });
            }
            resultFlairs.Last().WhitespaceAfter = "";

            var result = new RiderFlairContainer
            {
                PreflairWhitepace  = bits.First(),
                Flairs             = resultFlairs,
                PostflairWhitepace = bits.Last()
            };

            return(result);
        }
Exemplo n.º 2
0
 string FormatFlairs(RiderFlairContainer flairs)
 {
     return($"{flairs.PreflairWhitepace}{string.Join("", flairs.Flairs.Select(FormatFlair))}{flairs.PostflairWhitepace}");
 }