consumer_effect_compose.scp (1612B)
1 -- Return Result, request, and invoke are ordinary command trees. 2 -- The dispatcher owns return frames; receivers retain application state. 3 consumer outer 4 _ @ retained => (2, ("inner", (1, (11, ("outerSecond", retained))))) 5 6 consumer outerSecond 7 (stem leaf, (first, _)) @ retained => 8 (2, ("inner", (2, (22, ("outerEnd", (first, retained)))))) 9 (leaf, (problem, metadata)) @ _ => (0, (leaf, (problem, metadata))) 10 11 consumer outerEnd 12 (leaf, (problem, metadata)) @ (first, retained) => (0, (stem leaf, ((first, (retained, problem)), leaf))) 13 (stem leaf, (second, _)) @ (first, retained) => (0, (stem leaf, ((first, (retained, second)), leaf))) 14 15 consumer inner 16 label @ seed => (1, ("One", ((label, seed), ("innerSecond", (label, seed))))) 17 18 consumer innerSecond 19 (stem leaf, (value, _)) @ retained => (1, ("Two", (value, ("innerEnd", retained)))) 20 (leaf, (problem, metadata)) @ _ => (0, (leaf, (problem, metadata))) 21 22 consumer innerEnd 23 (stem leaf, (value, _)) @ retained => (0, (stem leaf, ((value, retained), leaf))) 24 (leaf, (problem, metadata)) @ _ => (0, (leaf, (problem, metadata))) 25 26 -- Driver/worker failures terminate before application recovery. 27 consumer unresolved 28 _ @ _ => (1, ("One", (7, ("absent", leaf)))) 29 30 consumer nestedWorkerFailure 31 _ @ retained => (2, ("workerFailure", (7, (leaf, ("outerEnd", (leaf, retained)))))) 32 33 consumer workerFailure 34 leaf @ _ => (0, (stem leaf, (leaf, leaf))) 35 36 consumer selected 37 _ @ _ => choose leaf (1, ("One", (7, ("absent", leaf)))) (0, (stem leaf, (42, leaf))) 38 39 consumer malformed 40 _ @ _ => stem leaf 41 42 consumer badOutcome 43 _ @ _ => (0, (3, leaf))