object "CardDeck" as cardDeck {
}
object "#card0 : Card" as card0card1 {
suit = 'S'
face = 1
}
object "#card1 : Card" as card0card2 {
suit = 'S'
face = 2
}
object "#card2 : Card" as card0card3 {
suit = 'H'
face = 1
}
cardDeck --> card1: cards
cardDeck --> card2: cards
cardDeck --> card3: cards
object "CardContainerIterator" as iterator0 {
pos = 0
}
iterator0 --> cardDeck: cardContainer
object "CardContainerIterator" as iterator1 {
pos = 1
}
iterator1 --> cardDeck: cardContainer
iterator0 ..> iterator0: hasNext() => true
iterator0 ..> iterator1: next() => #card0
object "CardContainerIterator" as iterator2 {
pos = 2
}
iterator2 --> cardDeck: cardContainer
iterator1 ..> iterator1: hasNext() => true
iterator1 ..> iterator2: next() => #card1
object "CardContainerIterator" as iterator3 {
pos = 3
}
iterator3 --> cardDeck: cardContainer
iterator2 ..> iterator2: hasNext() => true
iterator2 ..> iterator3: next() => #card2
iterator3 ..> iterator3: hasNext() => false
|