condition.proto

flyteidl.core.ComparisonExpression

[flyteidl.core.ComparisonExpression proto]

Defines a 2-level tree where the root is a comparison operator and Operands are primitives or known variables. Each expression results in a boolean result.

{
  "operator": "...",
  "left_value": "{...}",
  "right_value": "{...}"
}
operator

(flyteidl.core.ComparisonExpression.Operator)

left_value

(flyteidl.core.Operand)

right_value

(flyteidl.core.Operand)

Enum flyteidl.core.ComparisonExpression.Operator

[flyteidl.core.ComparisonExpression.Operator proto]

Binary Operator for each expression

EQ

(DEFAULT)

NEQ

GT

⁣Greater Than

GTE

LT

⁣Less Than

LTE

flyteidl.core.Operand

[flyteidl.core.Operand proto]

Defines an operand to a comparison expression.

{
  "primitive": "{...}",
  "var": "..."
}
primitive

(flyteidl.core.Primitive) Can be a constant

Only one of primitive, var may be set.

var

(string) Or one of this node’s input variables

Only one of primitive, var may be set.

flyteidl.core.BooleanExpression

[flyteidl.core.BooleanExpression proto]

Defines a boolean expression tree. It can be a simple or a conjunction expression. Multiple expressions can be combined using a conjunction or a disjunction to result in a final boolean result.

{
  "conjunction": "{...}",
  "comparison": "{...}"
}
conjunction

(flyteidl.core.ConjunctionExpression)

Only one of conjunction, comparison may be set.

comparison

(flyteidl.core.ComparisonExpression)

Only one of conjunction, comparison may be set.

flyteidl.core.ConjunctionExpression

[flyteidl.core.ConjunctionExpression proto]

Defines a conjunction expression of two boolean expressions.

{
  "operator": "...",
  "left_expression": "{...}",
  "right_expression": "{...}"
}
operator

(flyteidl.core.ConjunctionExpression.LogicalOperator)

left_expression

(flyteidl.core.BooleanExpression)

right_expression

(flyteidl.core.BooleanExpression)

Enum flyteidl.core.ConjunctionExpression.LogicalOperator

[flyteidl.core.ConjunctionExpression.LogicalOperator proto]

Nested conditions. They can be conjoined using AND / OR Order of evaluation is not important as the operators are Commutative

AND

(DEFAULT) ⁣Conjunction

OR