protected override IStringBuilder ToSingleStringBuilder() { IStringBuilder builder = StringBuilder.Empty; foreach (var expression in _elementaryExpressions) { builder = builder.ConcatWith(expression.ToStringBuilder()); } return(builder); }
private static IList <IStringBuilder> CreateConcatenatedStringBuilderForEachExpansion(IEnumerable <List <IList <IStringBuilder> > > expandedUnionList) { var resultList = new List <IStringBuilder>(); foreach (var expandedUnionExpression in expandedUnionList) { IStringBuilder stringBuilder = StringBuilder.Empty; foreach (var singleStringBuilder in expandedUnionExpression) { stringBuilder = stringBuilder.ConcatWith(singleStringBuilder.FirstOrDefault()); } resultList.Add(stringBuilder); } return(resultList); }
public override IList <IStringBuilder> Expand() { var returnList = new List <IStringBuilder>(); var singleStringBuilder = ToSingleStringBuilder(); RepeatRange.ToExpansionBounds(out var lowerBound, out var upperBound); for (var stringBuilderLength = lowerBound; stringBuilderLength <= upperBound; stringBuilderLength++) { IStringBuilder finalStringBuilder = StringBuilder.Empty; finalStringBuilder = finalStringBuilder.ConcatWith(singleStringBuilder, stringBuilderLength); returnList.Add(finalStringBuilder); } return(returnList); }