Class SqmCrossJoin<T>

All Implemented Interfaces:
Expression<T>, FetchParent<T,T>, From<T,T>, Join<T,T>, Path<T>, Selection<T>, TupleElement<T>, Serializable, JpaCriteriaNode, JpaCrossJoin<T>, JpaExpression<T>, JpaFetchParent<T,T>, JpaFrom<T,T>, JpaJoin<T,T>, JpaPath<T>, JpaSelection<T>, JpaTupleElement<T>, SemanticPathPart, SqmPath<T>, SqmExpression<T>, SqmFrom<T,T>, SqmJoin<T,T>, SqmSelectableNode<T>, SqmExpressibleAccessor<T>, SqmNode, SqmTypedNode<T>, SqmVisitableNode
Direct Known Subclasses:
SqmCorrelatedCrossJoin, SqmTreatedCrossJoin

public class SqmCrossJoin<T> extends AbstractSqmFrom<T,T> implements JpaCrossJoin<T>, SqmJoin<T,T>
Stuff and things
See Also:
API Note:
SqmCrossJoin and its offspring are largely de-typed to account for SqmCrossJoin having only one type argument for the right-hand side. To properly handle the type parameters in the hierarchy we would need to change this to accept type parameter for the left-handle side as well.

Another option is to not make it a join as in `SqmJoin`. Instead, model it as a root with its predicate(s) added to an internal `SqmPredicateCollection` (ansi join predicate) or to the query where clause (theta joins).

Implementation Note:
IMPL NOTE