Skip to content

JumpIfNot

control category: control-flow no `||` resultSize: 1

Jumps to a named Mark when the input value does NOT equal the given parameter.

Inverse of JumpIf. When the input differs from the supplied literal, execution skips to the named Mark; otherwise the chain continues normally. The input value is passed through unchanged in both cases.

Combined with JumpTo and Mark, JumpIfNot implements an if/else pattern in the rule chain (see the imperative branching cluster).

Parameters

1value Mandatory — accepts: BOOLEAN, DATE, FLOAT, INT, STRING, NULL

The literal compared against the input value. Its type must match the input's type (or be NULL).

2mark Mandatory — accepts: STRING

The name of the destination Mark to jump to.

Input type

  • BOOLEAN
  • DATE
  • FLOAT
  • INT
  • STRING

Output type

  • same-as-input

The input value is passed through unchanged.

Requires

  • Exactly one pipeline input.
  • Parameter type must match the input type (or be NULL).
  • The destination Mark must exist in the same chain.

Examples

If/else chain — skip the default branch when concept matches

:visit_concept => JumpIfNot(9202, "Default") => :visit_concept
// ...processing for the matching case...
JumpTo("Done")
Mark("Default")
// ...default-branch processing...
Mark("Done")

Errors

  • JumpIfNot got too many inputs
    More than one value reached the rule. JumpIfNot accepts a single input.
  • JumpIfNot accepts input of types: INTEGER, STRING, FLOAT, DATE, or BOOLEAN
    An unsupported input type (e.g. ARRAY) was supplied.
  • JumpIfNot requires the type of the input and the type of the parameter to be identical
    The literal value's type does not match the input field's declared type.

See also

JumpIf, JumpTo, Mark