Exemple #1
0
 private static Expression Choice(INode node)
 {
     if (node.Count > 1)
     {
         var expressions = node.Children.Select(Expression);
         return(ChoiceExpression.From(node, expressions));
     }
     return(Expression(node[0]));
 }
Exemple #2
0
        private Expression Expression(INode node)
        {
            Debug.Assert(node.Name == "choice");

            if (node.Count > 1)
            {
                var choices = node.Children.Select(Sequence);
                return(ChoiceExpression.From(node, choices));
            }

            return(Sequence(node[0]));
        }