diff --git a/models/Adapter.model b/models/Adapter.model index 3bb6134..b78e32f 100644 --- a/models/Adapter.model +++ b/models/Adapter.model @@ -2,17 +2,17 @@ fishingBoat := "TheFishingBoatIsSailing" } -channel CIO1 { - out fishingBoat(fb:Str, sail(message:Str)) == message +channel CIO{ + out captain(cp:Str, row(s:Str)) == s } channel C1{ - in fishingBoat(fb2:Str, sail(s2)) == s2 + in captain(cp1:Str, row(s2)) == s2 out fishingBoatAdapter(fa:Str, sail(s2)) == s2 } channel C2{ - in fishingBoatAdapter(fa2:Str, row(s3)) == s3 - out captain(cp1:Str, row(s3)) == s3 + in fishingBoatAdapter(fa2:Str, sail(s3)) == s3 + out fishingBoat(fb2:Str, sail(s3)) == s3 } diff --git a/models/Builder.model b/models/Builder.model new file mode 100644 index 0000000..85fa2df --- /dev/null +++ b/models/Builder.model @@ -0,0 +1,8 @@ +channel CIO{ + out Builder(n1:Int, setName(n:Int)) == 1 +} + +channel Build{ + in Builder(n2, build(n2:Int)) == 1 + out Hero(h:Int, build(n2)) == 1 +} \ No newline at end of file diff --git a/models/Decorator.model b/models/Decorator.model new file mode 100644 index 0000000..a31845d --- /dev/null +++ b/models/Decorator.model @@ -0,0 +1,4 @@ +channel C1{ + in simpleTroll(st2:Int, updatePower(power)) == power + out clubbedTroll(ct:Int, updatePower(power)) == power + 10 +} \ No newline at end of file diff --git a/models/Iterator.model b/models/Iterator.model new file mode 100644 index 0000000..910c571 --- /dev/null +++ b/models/Iterator.model @@ -0,0 +1,8 @@ +channel CIO{ + out treasureChest(items, getItems(itemType:Str)) == pair(0,0) +} + +channel C1{ + in treasureChest(i2, getItems(itemType)) == pair(0,0) + out treasureIterator(itemName:Str, getItems(itemType)) == itemName +} \ No newline at end of file diff --git a/models/Memento.model b/models/Memento.model new file mode 100644 index 0000000..8703d4d --- /dev/null +++ b/models/Memento.model @@ -0,0 +1,4 @@ +channel CIO1{ + out star(s:Tuple, timePasses(nil)) == tuple(starType:Str, tuple(years:Int,mass:Int)) +} + diff --git a/models/Observer.model b/models/Observer.model new file mode 100644 index 0000000..573ec04 --- /dev/null +++ b/models/Observer.model @@ -0,0 +1,20 @@ +init{ + weather := 0 + logger := "not_started" +} + +channel CIO1{ + out weather(time:Int, timePasses(nil)) == mod(time + 1,4) +} + +channel CIO2{ + out orcs(o:Int, update(weather)) == weather + out hobbits(h:Int, update(weather)) == weather +} + +channel C1{ + in weather(w:Int, update(weather)) == weather + out orcs(o2:Int, update(weather)) == weather + out hobbits(h2:Int, update(weather)) == weather +} + diff --git a/models/Proxy.model b/models/Proxy.model new file mode 100644 index 0000000..a60f8fb --- /dev/null +++ b/models/Proxy.model @@ -0,0 +1,9 @@ +channel CIO{ + out wizardTowerProxy(wtp:Int, enter(wizard:Str)) == wtp +} + +channel C1{ + in wizardTowerProxy(wtp2:Int, enter(wizard)) == wizard + out ivoryTower(it:Int, enter(wizard)) == if(eq(it,3), it + 1, it) +} +