/// <summary> /// The Accept method used to support the double-dispatch visitor pattern with a visitor that returns a result. /// </summary> /// <typeparam name="TResult">The result type returned by the visitor.</typeparam> /// <param name="visitor">The visitor that is visiting this query value.</param> /// <returns>The result of visiting this query value.</returns> public override TResult Accept <TResult>(IQueryValueVisitor <TResult> visitor) { return(((IAstoriaQueryValueVisitor <TResult>)visitor).Visit(this)); }
/// <summary> /// The Accept method used to support the double-dispatch visitor pattern with a visitor that returns a result. /// </summary> /// <typeparam name="TResult">The result type returned by the visitor.</typeparam> /// <param name="visitor">The visitor that is visiting this query value.</param> /// <returns>The result of visiting this query value.</returns> public override TResult Accept <TResult>(IQueryValueVisitor <TResult> visitor) { return(visitor.Visit(this)); }
/// <summary> /// The Accept method used to support the double-dispatch visitor pattern with a visitor that returns a result. /// </summary> /// <typeparam name="TResult">The result type returned by the visitor.</typeparam> /// <param name="visitor">The visitor that is visiting this query value.</param> /// <returns>The result of visiting this query value.</returns> public abstract TResult Accept <TResult>(IQueryValueVisitor <TResult> visitor);