Пример #1
0
    public void Match()
    {
        // Given
        var expression = new CaptureExpression("foo", new TextExpression("x"));

        // When
        var context = new ExpressionContext("x");
        var result  = expression.Run(context).FirstOrDefault();

        // Then
        Assert.Equal("x", result?.Input);
        Assert.Equal("x", result?.Output);
        Assert.Collection(context.CaptureTree.Root.Children,
                          item =>
        {
            Assert.Equal("foo", item.Name);
            Assert.NotNull(item.Value);
            Assert.Equal("x", item.Value !.Input);
            Assert.Equal("x", item.Value !.Output);
            Assert.Empty(item.Children);
        }
Пример #2
0
 public override bool Apply(CaptureExpression expression, NormalizedCharSet param)
 {
     Invoke(expression.Sub, param);
     return(false);
 }