40 lines
1.7 KiB
Plaintext
40 lines
1.7 KiB
Plaintext
#import "/src/lib.typ" as chronos
|
|
|
|
|
|
#chronos.diagram({
|
|
import chronos: *
|
|
_seq("User", "A", comment: "DoWork", enable-dst: true)
|
|
_seq("A", "B", comment: [#sym.quote.angle.l createRequest #sym.quote.angle.r], enable-dst: true)
|
|
_seq("B", "C", comment: "DoWork", enable-dst: true)
|
|
_seq("C", "B", comment: "WorkDone", destroy-src: true, dashed: true)
|
|
_seq("B", "A", comment: "RequestCreated", disable-src: true, dashed: true)
|
|
_seq("A", "User", comment: "Done", disable-src: true)
|
|
})
|
|
|
|
#chronos.diagram({
|
|
import chronos: *
|
|
_seq("User", "A", comment: "DoWork", enable-dst: true)
|
|
_seq("A", "A", comment: "Internal call", enable-dst: true)
|
|
_seq("A", "B", comment: [#sym.quote.angle.l createRequest #sym.quote.angle.r], enable-dst: true)
|
|
_seq("B", "A", comment: "RequestCreated", disable-src: true, disable-dst: true, dashed: true)
|
|
_seq("A", "User", comment: "Done", disable-src: true)
|
|
})
|
|
|
|
#chronos.diagram({
|
|
import chronos: *
|
|
_seq("alice", "bob", comment: "hello", enable-dst: true)
|
|
_seq("bob", "bob", comment: "self call", enable-dst: true)
|
|
_seq("bill", "bob", comment: "hello from thread 2", enable-dst: true)
|
|
_seq("bob", "george", comment: "create", enable-dst: true)
|
|
_seq("bob", "bill", comment: "done in thread 2", disable-src: true, dashed: true)
|
|
_seq("bob", "bob", comment: "rc", disable-src: true, dashed: true)
|
|
_seq("bob", "george", comment: "delete", destroy-dst: true)
|
|
_seq("bob", "alice", comment: "success", disable-src: true, dashed: true)
|
|
})
|
|
|
|
#chronos.diagram({
|
|
import chronos: *
|
|
_seq("alice", "bob", comment: "hello1", enable-dst: true)
|
|
_seq("bob", "charlie", comment: "hello2", enable-dst: true, disable-src: true)
|
|
_seq("charlie", "alice", comment: "ok", dashed: true, disable-src: true)
|
|
}) |