Table of Contents

Class QueryExpressionVisitor<TArgument, TResult>

Namespace
JsonApiDotNetCore.Queries.Expressions
Assembly
JsonApiDotNetCore.dll

Implements the visitor design pattern that enables traversing a QueryExpression tree.

[PublicAPI]
public abstract class QueryExpressionVisitor<TArgument, TResult>

Type Parameters

TArgument

The type to use for passing custom state between visit methods.

TResult

The type that is returned from visit methods.

Inheritance
QueryExpressionVisitor<TArgument, TResult>
Derived
Inherited Members

Methods

DefaultVisit(QueryExpression, TArgument)

public virtual TResult DefaultVisit(QueryExpression expression, TArgument argument)

Parameters

expression QueryExpression
argument TArgument

Returns

TResult

Visit(QueryExpression, TArgument)

public virtual TResult Visit(QueryExpression expression, TArgument argument)

Parameters

expression QueryExpression
argument TArgument

Returns

TResult

VisitAny(AnyExpression, TArgument)

public virtual TResult VisitAny(AnyExpression expression, TArgument argument)

Parameters

expression AnyExpression
argument TArgument

Returns

TResult

VisitComparison(ComparisonExpression, TArgument)

public virtual TResult VisitComparison(ComparisonExpression expression, TArgument argument)

Parameters

expression ComparisonExpression
argument TArgument

Returns

TResult

VisitCount(CountExpression, TArgument)

public virtual TResult VisitCount(CountExpression expression, TArgument argument)

Parameters

expression CountExpression
argument TArgument

Returns

TResult

VisitHas(HasExpression, TArgument)

public virtual TResult VisitHas(HasExpression expression, TArgument argument)

Parameters

expression HasExpression
argument TArgument

Returns

TResult

VisitInclude(IncludeExpression, TArgument)

public virtual TResult VisitInclude(IncludeExpression expression, TArgument argument)

Parameters

expression IncludeExpression
argument TArgument

Returns

TResult

VisitIncludeElement(IncludeElementExpression, TArgument)

public virtual TResult VisitIncludeElement(IncludeElementExpression expression, TArgument argument)

Parameters

expression IncludeElementExpression
argument TArgument

Returns

TResult

VisitIsType(IsTypeExpression, TArgument)

public virtual TResult VisitIsType(IsTypeExpression expression, TArgument argument)

Parameters

expression IsTypeExpression
argument TArgument

Returns

TResult

VisitLiteralConstant(LiteralConstantExpression, TArgument)

public virtual TResult VisitLiteralConstant(LiteralConstantExpression expression, TArgument argument)

Parameters

expression LiteralConstantExpression
argument TArgument

Returns

TResult

VisitLogical(LogicalExpression, TArgument)

public virtual TResult VisitLogical(LogicalExpression expression, TArgument argument)

Parameters

expression LogicalExpression
argument TArgument

Returns

TResult

VisitMatchText(MatchTextExpression, TArgument)

public virtual TResult VisitMatchText(MatchTextExpression expression, TArgument argument)

Parameters

expression MatchTextExpression
argument TArgument

Returns

TResult

VisitNot(NotExpression, TArgument)

public virtual TResult VisitNot(NotExpression expression, TArgument argument)

Parameters

expression NotExpression
argument TArgument

Returns

TResult

VisitNullConstant(NullConstantExpression, TArgument)

public virtual TResult VisitNullConstant(NullConstantExpression expression, TArgument argument)

Parameters

expression NullConstantExpression
argument TArgument

Returns

TResult

VisitPagination(PaginationExpression, TArgument)

public virtual TResult VisitPagination(PaginationExpression expression, TArgument argument)

Parameters

expression PaginationExpression
argument TArgument

Returns

TResult

VisitPaginationElementQueryStringValue(PaginationElementQueryStringValueExpression, TArgument)

public virtual TResult VisitPaginationElementQueryStringValue(PaginationElementQueryStringValueExpression expression, TArgument argument)

Parameters

expression PaginationElementQueryStringValueExpression
argument TArgument

Returns

TResult

VisitPaginationQueryStringValue(PaginationQueryStringValueExpression, TArgument)

public virtual TResult VisitPaginationQueryStringValue(PaginationQueryStringValueExpression expression, TArgument argument)

Parameters

expression PaginationQueryStringValueExpression
argument TArgument

Returns

TResult

VisitQueryStringParameterScope(QueryStringParameterScopeExpression, TArgument)

public virtual TResult VisitQueryStringParameterScope(QueryStringParameterScopeExpression expression, TArgument argument)

Parameters

expression QueryStringParameterScopeExpression
argument TArgument

Returns

TResult

VisitQueryableHandler(QueryableHandlerExpression, TArgument)

public virtual TResult VisitQueryableHandler(QueryableHandlerExpression expression, TArgument argument)

Parameters

expression QueryableHandlerExpression
argument TArgument

Returns

TResult

VisitResourceFieldChain(ResourceFieldChainExpression, TArgument)

public virtual TResult VisitResourceFieldChain(ResourceFieldChainExpression expression, TArgument argument)

Parameters

expression ResourceFieldChainExpression
argument TArgument

Returns

TResult

VisitSort(SortExpression, TArgument)

public virtual TResult VisitSort(SortExpression expression, TArgument argument)

Parameters

expression SortExpression
argument TArgument

Returns

TResult

VisitSortElement(SortElementExpression, TArgument)

public virtual TResult VisitSortElement(SortElementExpression expression, TArgument argument)

Parameters

expression SortElementExpression
argument TArgument

Returns

TResult

VisitSparseFieldSet(SparseFieldSetExpression, TArgument)

public virtual TResult VisitSparseFieldSet(SparseFieldSetExpression expression, TArgument argument)

Parameters

expression SparseFieldSetExpression
argument TArgument

Returns

TResult

VisitSparseFieldTable(SparseFieldTableExpression, TArgument)

public virtual TResult VisitSparseFieldTable(SparseFieldTableExpression expression, TArgument argument)

Parameters

expression SparseFieldTableExpression
argument TArgument

Returns

TResult