Package io.trino.json.ir
Interface IrPredicate
- All Superinterfaces:
IrPathNode
- All Known Implementing Classes:
IrComparisonPredicate,IrConjunctionPredicate,IrDisjunctionPredicate,IrExistsPredicate,IrIsUnknownPredicate,IrNegationPredicate,IrStartsWithPredicate
public sealed interface IrPredicate
extends IrPathNode
permits IrComparisonPredicate, IrConjunctionPredicate, IrDisjunctionPredicate, IrExistsPredicate, IrIsUnknownPredicate, IrNegationPredicate, IrStartsWithPredicate
-
Method Summary
Modifier and TypeMethodDescriptiondefault <R,C> R accept(IrJsonPathVisitor<R, C> visitor, C context) type()Get the result type, whenever known.
-
Method Details
-
accept
- Specified by:
acceptin interfaceIrPathNode
-
type
Description copied from interface:IrPathNodeGet the result type, whenever known. Type might be known for IrPathNodes returning a singleton sequence (e.g. IrArithmeticBinary), as well as for IrPathNodes returning a sequence of arbitrary length (e.g. IrSizeMethod). If the node potentially returns a non-singleton sequence, this method shall return Type only if the type is the same for all elements of the sequence. NOTE: Type is not applicable to every IrPathNode. If the IrPathNode produces an empty sequence, a JSON null, or a sequence containing non-literal JSON items, Type cannot be determined.- Specified by:
typein interfaceIrPathNode
-