public override void ToPrecedenceFreeEPL(TextWriter writer, EPStatementFormatter formatter) { writer.Write("every "); PatternExprPrecedenceEnum precedence = Precedence; if (Children[0] is PatternEveryExpr) { precedence = PatternExprPrecedenceEnum.MAXIMIM; } Children[0].ToEPL(writer, precedence, formatter); }
public void ToEPL(TextWriter writer, PatternExprPrecedenceEnum parentPrecedence, EPStatementFormatter formatter) { if (Precedence.GetLevel() < parentPrecedence.GetLevel()) { writer.Write("("); ToPrecedenceFreeEPL(writer); writer.Write(")"); } else { ToPrecedenceFreeEPL(writer); } }
public override void ToPrecedenceFreeEPL( TextWriter writer, EPStatementFormatter formatter) { if (Single != null) { writer.Write("["); Single.ToEPL(writer, ExpressionPrecedenceEnum.MINIMUM); writer.Write("]"); } else { if (Low != null || High != null) { writer.Write("["); if ((Low != null) && (High != null)) { Low.ToEPL(writer, ExpressionPrecedenceEnum.MINIMUM); writer.Write(":"); High.ToEPL(writer, ExpressionPrecedenceEnum.MINIMUM); } else if (Low != null) { Low.ToEPL(writer, ExpressionPrecedenceEnum.MINIMUM); writer.Write(":"); } else { writer.Write(":"); High.ToEPL(writer, ExpressionPrecedenceEnum.MINIMUM); } writer.Write("] "); } } PatternExprPrecedenceEnum precedence = Precedence; if (Children[0] is PatternMatchUntilExpr) { precedence = PatternExprPrecedenceEnum.MAXIMIM; } Children[0].ToEPL(writer, precedence, formatter); if (Children.Count > 1) { writer.Write(" until "); Children[1].ToEPL(writer, Precedence, formatter); } }
/// <summary>Returns Precedence. </summary> /// <returns>Precedence</returns> public static int GetLevel(this PatternExprPrecedenceEnum value) { return((int)value); }