public IfFirstUnit(IUnitPattern pattern) : base(pattern, WeightOf.BuildChainPattern.IfFirstUnit) { }
public IfFirstUnit(IUnitPattern pattern, int weight) : base(pattern, weight) { }
public SkipWhileUnit(IUnitPattern pattern) : base(pattern, WeightOf.BuildChainPattern.SkipWhileUnit) { }
public SkipWhileUnit(IUnitPattern unitPattern, int weight) : base(unitPattern, weight) { }
public SkipTillUnit(IUnitPattern pattern, int weight) : base(pattern, weight) { }
protected BuildChainPatternByUnitBase(IUnitPattern unitPattern, int weight) : base(weight) => UnitPattern = unitPattern ?? throw new ArgumentNullException(nameof(unitPattern));