# Sequence

A sequence [s1; s2] of steps is matched when step s1 is first matched and when step s2 is then matched.

Note

Note that this effectively imposes an order on messages. However, because discarded messages are reconsidered for matching, this means that s2 can arrive before s1 but s1 will always be forwarded before s2. Sequences can be seen as a way to reorder messages.

Sequences are written with

#![allow(unused)]
fn main() {
seq [
s1;
s2;
s3;
...
sn;
]
}

where s1, ..., sn are steps.