summaryrefslogtreecommitdiff
path: root/system
diff options
context:
space:
mode:
authorRaimo Niskanen <raimo@erlang.org>2019-08-01 08:57:18 +0200
committerRaimo Niskanen <raimo@erlang.org>2019-08-01 08:57:18 +0200
commit22db0a0d909692f3995760d9eaf1def1aaff14a5 (patch)
tree52481331d6b2bd6b79bb6f39da3f2bb58e62b8a7 /system
parente806c75e897b100649f1e14f85526408c66d34a3 (diff)
downloaderlang-22db0a0d909692f3995760d9eaf1def1aaff14a5.tar.gz
Mention action handling details in user's guide
Diffstat (limited to 'system')
-rw-r--r--system/doc/design_principles/statem.xml12
1 files changed, 12 insertions, 0 deletions
diff --git a/system/doc/design_principles/statem.xml b/system/doc/design_principles/statem.xml
index 23e9054547..81a0c617f1 100644
--- a/system/doc/design_principles/statem.xml
+++ b/system/doc/design_principles/statem.xml
@@ -624,6 +624,18 @@ State(S) x Event(E) -> Actions(A), State(S')</pre>
and set a time-out to use absolute instead of relative time
(using the <c>Opts</c> field).
</p>
+ <p>
+ Among these <em>transition actions</em> only to reply to a caller
+ is an immediate action. The others are collected and handled
+ later during the <em>state transition</em>.
+ <seealso marker="#Inserted Events">Inserted Events</seealso>
+ are stored and inserted all together,
+ and the rest set transition options
+ where the last of a specific type override the previous.
+ See the description of a <em>state transition</em>
+ in the <c>gen_statem(3)</c> manual page for type
+ <seealso marker="stdlib:gen_statem#type-transition_option"><c>transition_option()</c></seealso>.
+ </p>
</section>
<!-- =================================================================== -->