public bool VisitExprValueFrameBorder(ExprValueFrameBorder expr, TCtx arg) { var res = this.Visit(expr, "ValueFrameBorder", arg, out var argOut) && this.Accept("Value", expr.Value, argOut); this.VisitPlainProperty("FrameBorderDirection", expr.FrameBorderDirection, argOut); this._visitor.EndVisitExpr(expr, arg); return(res); }
public bool VisitExprValueFrameBorder(ExprValueFrameBorder exprValueFrameBorder, IExpr?arg) { exprValueFrameBorder.Value.Accept(this, exprValueFrameBorder); switch (exprValueFrameBorder.FrameBorderDirection) { case FrameBorderDirection.Preceding: this.Builder.Append(" PRECEDING"); break; case FrameBorderDirection.Following: this.Builder.Append(" FOLLOWING"); break; default: throw new ArgumentOutOfRangeException(); } return(true); }
public static ExprValueFrameBorder WithFrameBorderDirection(this ExprValueFrameBorder original, FrameBorderDirection newFrameBorderDirection) => new ExprValueFrameBorder(value: original.Value, frameBorderDirection: newFrameBorderDirection);
public static ExprValueFrameBorder WithValue(this ExprValueFrameBorder original, ExprValue newValue) => new ExprValueFrameBorder(value: newValue, frameBorderDirection: original.FrameBorderDirection);