~aleteoryx/muditaos

ref: 32f7786e4bc48e6bdc5539d0c3dece8f58b62649 muditaos/module-gui/doc/visitor_item_example.puml -rw-r--r-- 1.1 KiB
32f7786e — Lefucjusz Revert "[BH-1694] Increase CPU core voltage from 900mV to 975mV" 2 years ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
@startuml
skinparam BackgroundColor F0F0F0

participant "ConcreteTree" as ct
participant "ConcreteWalker" as cw
participant "ConcreteVisitor" as cv
participant "gui::Item" as item


[o->cw : traverse(root)
    create ct
        activate cw #DarkGreen
    ct <- cw : <<create>>(root)
    activate ct #DarkGreen

        create cv
        cw -> cv : <<create>>
            activate cv #DarkGreen
loop tree::hasNext()
    ct <- cw : getNext
    activate ct #LimeGreen
    ct --> cw : node
    deactivate ct
        cw -> item : accept(visitor)
                activate item #DarkGreen
            cv <- item : visit(*this)
            activate cv #LimeGreen

            cv -> item : interaction
                activate item #LimeGreen
            cv <-- item
                deactivate item

            cv --> item
            deactivate cv
        cw <-- item
                deactivate item
        cw -> cv : <<concrete interaction>>
            activate cv #LimeGreen
        cw <-- cv
            deactivate cv
end
        cw -x cv : <<delete>>
            deactivate cv
    ct x- cw : <<delete>>
    deactivate ct

@enduml