<commit_before>using System;
using System.Collections.Generic;
using System.Linq;
using hw.Scanner;
using Reni.ReniParser;
using Reni.ReniSyntax;

namespace Reni.TokenClasses
{
    sealed class List : TokenClass
    {
        protected override Syntax Suffix(Syntax left, SourcePart token)
        {
            return new ListSyntax(this, token, left.ToList(this));
        }
        protected override Syntax Infix(Syntax left, SourcePart token, Syntax right)
        {
            return new ListSyntax(this, token, left.ToList(this).Concat(right.ToList(this)).ToArray());
        }
    }
}<commit_msg>Bug: Lists with empty elements are not compiled<commit_after>using System;
using System.Collections.Generic;
using System.Linq;
using hw.Scanner;
using Reni.ReniParser;
using Reni.ReniSyntax;

namespace Reni.TokenClasses
{
    sealed class List : TokenClass
    {
        protected override Syntax Prefix(SourcePart token, Syntax right)
            => ListSyntax(new EmptyList(token), token, right);

        protected override Syntax Suffix(Syntax left, SourcePart token)
            => ListSyntax(left, token, new EmptyList(token));

        protected override Syntax Infix(Syntax left, SourcePart token, Syntax right)
            => ListSyntax(left, token, right);

        ListSyntax ListSyntax(Syntax left, SourcePart token, Syntax right)
            => new ListSyntax(this, token, left.ToList(this).Concat(right.ToList(this)).ToArray());
    }
}
{'fraction_non_alphanumeric': 0.09409340659340659, 'fraction_numerical': 0.0, 'mean_word_length': 3.3492537313432837, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1857909', 'n_tokens_mistral': 411, 'n_tokens_neox': 407, 'n_words': 114}