18 lines
549 B
C#
18 lines
549 B
C#
namespace Parsing.Schema;
|
|
|
|
public abstract class RepetitionSchemaBuilder<S, T, U> where S : RepetitionSchemaBuilder<S, T, U>, ISchemaBuilder<T, U>, new() where T : ISchema<U> where U : ISchemaContext
|
|
{
|
|
public S GetNewRepetitionSchemaBuilder(S upperLayerBuilder)
|
|
{
|
|
var newBuilder = new S();
|
|
newBuilder.UpperLayerBuilder = upperLayerBuilder;
|
|
return newBuilder;
|
|
}
|
|
|
|
public S? UpperLayerBuilder { get; set; }
|
|
|
|
public int NumRepetition { get; set; }
|
|
|
|
public RepetitionType RepetitionType { get; set; }
|
|
}
|