//and public TemporalExpression And(TemporalExpression expr) { if (this.GetType() == typeof(TEIntersect)) { ((TEIntersect)this).Add(expr); return this; } else { TEIntersect intersect = new TEIntersect(); intersect.Add(this); intersect.Add(expr); return intersect; } }
public TEDifference(TemporalExpression exprA, TemporalExpression exprB) { this.ExpressionA = exprA; this.ExpressionB = exprB; }
/// <summary> /// Adds a temporal expression to the list /// </summary> /// <param name="expr">Temporal expression to add.</param> public void Add(TemporalExpression expr) { this.Expressions.Add(expr); }
//minus public TemporalExpression Minus(TemporalExpression expr) { return new TEDifference(this, expr); }
//Or public TemporalExpression Or(TemporalExpression expr) { if (this.GetType() == typeof(TEUnion)) { ((TEUnion)this).Add(expr); return this; } else { TEUnion union = new TEUnion(); union.Add(this); union.Add(expr); return union; } }