Predicate Types
The supported operators are
<, <=, =, !=, >, and >=. Predicate values use 0x-prefixed hexadecimal strings.
Evaluation
Base evaluates predicates against the state immediately before the transaction would execute. If any predicate is false, the transaction remains pending. An earlier transaction can change the balance or storage value that a pending transaction watches. The pending transaction can then become eligible in the same Flashblock.Balance Example
Balance predicate
Storage Example
Storage predicate
(storage[address][slot] & mask) with value. Omit mask to compare the full storage word.
Block and Flashblock Position
Useblock_number to target a block and flashblock_index to target a position within that Flashblock. Add separate predicates when both conditions must match. Valid flashblock_index values range from 1 through 10, inclusive; the corresponding hexadecimal values are 0x1 through 0xa.