Exemplo n.º 1
0
        static BooleanEngineBuilder()
        {
            var OperatorNode = Deferred <OperatorNode>();

            var AndOperator = Terms.Text("AND")
                              .Or(
                Terms.Text("&&")
                );

            var NotOperator = Terms.Text("NOT")
                              .Or(
                Terms.Text("!")
                );

            var OrTextOperators = Terms.Text("OR")
                                  .Or(
                Terms.Text("||")
                );

            // Operators that need to be NOT next when the default OR ' ' operator is found.
            var NotOrOperators = OneOf(AndOperator, NotOperator, OrTextOperators);

            // Default operator.
            var OrOperator = Literals.WhiteSpace()
                             .Then <string>(static x => " ") // Normalize whitespace.