Primitive-Collections/Primitive-Collections/src/main/java/speiger/src/collections/builder/Segment.java

29 lines
644 B
Java
Raw Normal View History

package speiger.src.collections.builder;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
public class Segment
{
String text;
List<ConditionedSegment> segments = new ArrayList<>();
public Segment(String text, List<ConditionedSegment> segments)
{
this.text = text;
this.segments = segments;
}
public int build(Set<String> parsePool, StringBuilder builder, int index)
{
int length = builder.length();
builder.insert(index, text);
for(int i = 0,offset=0,m=segments.size();i<m;i++)
{
offset += segments.get(i).build(parsePool, builder, index+offset);
}
return builder.length() - length;
}
}