Class Comprehension

java.lang.Object
co.permify.sdk.model.Comprehension

@Generated("org.openapitools.codegen.languages.JavaClientCodegen") public class Comprehension extends Object
A comprehension expression applied to a list or map. Comprehensions are not part of the core syntax, but enabled with macros. A macro matches a specific call signature within a parsed AST and replaces the call with an alternate AST block. Macro expansion happens at parse time. The following macros are supported within CEL: Aggregate type macros may be applied to all elements in a list or all keys in a map: * `all`, `exists`, `exists_one` - test a predicate expression against the inputs and return `true` if the predicate is satisfied for all, any, or only one value `list.all(x, x < 10)`. * `filter` - test a predicate expression against the inputs and return the subset of elements which satisfy the predicate: `payments.filter(p, p > 1000)`. * `map` - apply an expression to all elements in the input and return the output aggregate type: `[1, 2, 3].map(i, i * i)`. The `has(m.x)` macro tests whether the property `x` is present in struct `m`. The semantics of this macro depend on the type of `m`. For proto2 messages `has(m.x)` is defined as 'defined, but not set`. For proto3, the macro tests whether the property is set to its default. For map and struct types, the macro tests whether the property `x` is defined on `m`.
  • Field Details

  • Constructor Details

    • Comprehension

      public Comprehension()
  • Method Details

    • iterVar

      public Comprehension iterVar(String iterVar)
    • getIterVar

      @Nullable public String getIterVar()
      The name of the iteration variable.
      Returns:
      iterVar
    • setIterVar

      public void setIterVar(String iterVar)
    • iterRange

      public Comprehension iterRange(Expr iterRange)
    • getIterRange

      @Nullable public Expr getIterRange()
      Get iterRange
      Returns:
      iterRange
    • setIterRange

      public void setIterRange(Expr iterRange)
    • accuVar

      public Comprehension accuVar(String accuVar)
    • getAccuVar

      @Nullable public String getAccuVar()
      The name of the variable used for accumulation of the result.
      Returns:
      accuVar
    • setAccuVar

      public void setAccuVar(String accuVar)
    • accuInit

      public Comprehension accuInit(Expr accuInit)
    • getAccuInit

      @Nullable public Expr getAccuInit()
      Get accuInit
      Returns:
      accuInit
    • setAccuInit

      public void setAccuInit(Expr accuInit)
    • loopCondition

      public Comprehension loopCondition(Expr loopCondition)
    • getLoopCondition

      @Nullable public Expr getLoopCondition()
      Get loopCondition
      Returns:
      loopCondition
    • setLoopCondition

      public void setLoopCondition(Expr loopCondition)
    • loopStep

      public Comprehension loopStep(Expr loopStep)
    • getLoopStep

      @Nullable public Expr getLoopStep()
      Get loopStep
      Returns:
      loopStep
    • setLoopStep

      public void setLoopStep(Expr loopStep)
    • result

      public Comprehension result(Expr result)
    • getResult

      @Nullable public Expr getResult()
      Get result
      Returns:
      result
    • setResult

      public void setResult(Expr result)
    • equals

      public boolean equals(Object o)
      Return true if this Comprehension object is equal to o.
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • toUrlQueryString

      public String toUrlQueryString()
      Convert the instance into URL query string.
      Returns:
      URL query string
    • toUrlQueryString

      public String toUrlQueryString(String prefix)
      Convert the instance into URL query string.
      Parameters:
      prefix - prefix of the query string
      Returns:
      URL query string