Interface IrPredicate

All Superinterfaces:
IrPathNode
All Known Implementing Classes:
IrComparisonPredicate, IrConjunctionPredicate, IrDisjunctionPredicate, IrExistsPredicate, IrIsUnknownPredicate, IrNegationPredicate, IrStartsWithPredicate

  • Method Summary

    Modifier and Type
    Method
    Description
    default <R, C> R
    accept(IrJsonPathVisitor<R,C> visitor, C context)
     
    default Optional<Type>
    Get the result type, whenever known.
  • Method Details

    • accept

      default <R, C> R accept(IrJsonPathVisitor<R,C> visitor, C context)
      Specified by:
      accept in interface IrPathNode
    • type

      default Optional<Type> type()
      Description copied from interface: IrPathNode
      Get 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:
      type in interface IrPathNode