0
|
1 # super rough code
|
|
2
|
|
3 class AbstractPort:
|
|
4 def __init__(self):
|
|
5 pass
|
|
6 def put_data(self, value):
|
|
7 pass
|
|
8 def get_data(self):
|
|
9 pass
|
|
10
|
|
11 class Port(AbstractPort):
|
|
12 "Connects from a node to exactly one node."
|
|
13 def __init__(self, value=None):
|
|
14 AbstractPort.__init__(self)
|
|
15 self.value = value
|
|
16 def put_data(self, value):
|
|
17 self.value = value
|
|
18 def get_data(self):
|
|
19 return self.value
|
|
20
|
|
21 class MultiPort(AbstractPort):
|
|
22 "Connects from a node to any number of nodes."
|
|
23 def __init__(self, values=None):
|
|
24 AbstractPort.__init__(self)
|
|
25 self.values = values
|
|
26 def put_data(self, values):
|
|
27 self.values = values
|
|
28 def get_data(self):
|
|
29 return self.values
|