Compare

typed block

Allows comparisons against the specified value.

Factories

Compare

Compare() -> CompareHandle

Construct a fresh Compare block with an auto-generated id.

Use this when authoring from scratch, the runtime picks a UUID automatically.

Compare

Compare(id: String) -> CompareHandle

Construct a Compare block with an operator-supplied id.

ParameterTypeRequiredDescription
idStringyesWire identifier, typically a Connect UUID restored by decompile so round-trips stay byte-stable.

Methods

comparison_value

comparison_value(value: JSONPath) -> CompareHandle

Set the ComparisonValue parameter. Any single JSONPath identifier that is valid for the flow data object. Measured 2026-10-14: Connect refuses a literal, a number, the empty string and a path outside the parameter_value grammar.

ParameterTypeRequiredDescription
valueJSONPathyesAny single JSONPath identifier that is valid for the flow data object. Measured 2026-10-14: Connect refuses a literal, a number, the empty string and a path outside the parameter_value grammar.

next

next(target: Handle) -> CompareHandle

Wire the success-path transition. Substitutes the target's auto-generated UUID into the wire Transitions.NextAction slot.

ParameterTypeRequiredDescription
targetHandleyesThe block to route to once this block completes successfully.

when

when(cond: ConditionHandle, target: Handle) -> CompareHandle

Append a Conditions[] branch. Multiple .when(...) calls chain, evaluation runs in source order, first match wins.

ParameterTypeRequiredDescription
condConditionHandleyesBuilt from the Cond::<op>(...) namespace, e.g. Cond::equals("42").
targetHandleyesBlock to route to when the condition matches.

on_no_matching_condition

on_no_matching_condition(target: Handle) -> CompareHandle

Wire an error transition for NoMatchingCondition: if no other Condition matches.

ParameterTypeRequiredDescription
targetHandleyesBlock to route to on NoMatchingCondition. if no other Condition matches.

set_id

set_id(id: String) -> CompareHandle

Override the auto-generated identifier with a specific wire id.

ParameterTypeRequiredDescription
idStringyesWire identifier override. Decompile threads this through to round-trip Connect-side UUIDs.

meta_position

meta_position(x: i64, y: i64) -> CompareHandle

Set the block's canvas position. Mostly auto-emitted by decompile; authored scripts call Flow.auto_layout() instead and let the layout pass fill positions in.

ParameterTypeRequiredDescription
xi64yesCanvas X coordinate.
yi64yesCanvas Y coordinate.

set_meta

set_meta(key: String, value: Dynamic) -> CompareHandle

Single-key escape hatch, set one ActionMetadata key by name when the typed meta_* setters don't cover it.

ParameterTypeRequiredDescription
keyStringyesWire key name (under Metadata.ActionMetadata[<id>]).
valueDynamicyesAny JSON-serializable Rhai value.

overwrite_meta

overwrite_meta(value: Map) -> CompareHandle

Full-replace escape hatch, overwrite the entire ActionMetadata blob.

ParameterTypeRequiredDescription
valueMapyesReplacement map for the entire ActionMetadata sub-object.

set_meta_param

set_meta_param(param: String, flag: String, value: Dynamic) -> CompareHandle

Set a single per-parameter ActionMetadata flag.

ParameterTypeRequiredDescription
paramStringyesParameter name (e.g. "Text").
flagStringyesFlag name ("useDynamic", "MFLAG_*", etc.).
valueDynamicyesFlag value.

overwrite_meta_param

overwrite_meta_param(param: String, value: Map) -> CompareHandle

Replace the entire flag map for one parameter.

ParameterTypeRequiredDescription
paramStringyesParameter name.
valueMapyesReplacement flag map for the parameter.

overwrite_parameters

overwrite_parameters(value: Map) -> CompareHandle

Wire-shape escape hatch, overwrite the entire Parameters blob.

ParameterTypeRequiredDescription
valueMapyesReplacement parameter map for the block.

raw_transitions

raw_transitions(value: Map) -> CompareHandle

Wire-shape escape hatch for non-canonical transition objects.

ParameterTypeRequiredDescription
valueMapyesReplacement transitions map (raw JSON shape).