public Repetition Repeat(Action <HandlerBuilder> pattern)
        {
            if (pattern == null)
            {
                throw new ArgumentNullException("pattern");
            }

            var builder = new HandlerBuilder();

            pattern(builder);
            return(new Repetition(this, builder));
        }
 public Repetition(HandlerBuilder builder, HandlerBuilder innerBuilder)
 {
     _builder      = builder;
     _innerBuilder = innerBuilder;
 }