コード例 #1
0
 public override void ToPrecedenceFreeEPL(TextWriter writer)
 {
     if (_optionalMaxExpressions == null || _optionalMaxExpressions.IsEmpty())
     {
         PatternExpressionUtil.ToPrecedenceFreeEPL(writer, "->", ChildNodes, Precedence);
     }
     else
     {
         ChildNodes[0].ToEPL(writer, PatternExpressionPrecedenceEnum.MINIMUM);
         for (int i = 1; i < ChildNodes.Count; i++)
         {
             ExprNode optionalMaxExpression = null;
             if (_optionalMaxExpressions.Count > (i - 1))
             {
                 optionalMaxExpression = _optionalMaxExpressions[i - 1];
             }
             if (optionalMaxExpression == null)
             {
                 writer.Write(" -> ");
             }
             else
             {
                 writer.Write(" -[");
                 writer.Write(ExprNodeUtility.ToExpressionStringMinPrecedenceSafe(optionalMaxExpression));
                 writer.Write("]> ");
             }
             ChildNodes[i].ToEPL(writer, PatternExpressionPrecedenceEnum.MINIMUM);
         }
     }
 }
コード例 #2
0
 public override void ToPrecedenceFreeEPL(TextWriter writer)
 {
     PatternExpressionUtil.ToPrecedenceFreeEPL(writer, "and", ChildNodes, Precedence);
 }