85 connections = variable.connectionPointIn.getconnections() |
85 connections = variable.connectionPointIn.getconnections() |
86 if connections is not None: |
86 if connections is not None: |
87 if parameter != "EN": |
87 if parameter != "EN": |
88 one_input_connected = True |
88 one_input_connected = True |
89 if inout_variables.has_key(parameter): |
89 if inout_variables.has_key(parameter): |
90 value = generator.ComputeExpression(body, connections, executionOrderId > 0, True) |
90 expression = generator.ComputeExpression(body, connections, executionOrderId > 0, True) |
91 inout_variables[parameter] = value |
91 if expression is not None: |
|
92 inout_variables[parameter] = value |
92 else: |
93 else: |
93 value = generator.ComputeExpression(body, connections, executionOrderId > 0) |
94 expression = generator.ComputeExpression(body, connections, executionOrderId > 0) |
94 connected_vars.append(([(parameter, input_info), (" := ", ())], |
95 if expression is not None: |
95 generator.ExtractModifier(variable, value, input_info))) |
96 connected_vars.append(([(parameter, input_info), (" := ", ())], |
|
97 generator.ExtractModifier(variable, expression, input_info))) |
96 else: |
98 else: |
97 all_input_connected = False |
99 all_input_connected = False |
98 else: |
100 else: |
99 all_input_connected = False |
101 all_input_connected = False |
100 if len(output_variables) > 1 or not all_input_connected: |
102 if len(output_variables) > 1 or not all_input_connected: |
144 else: |
146 else: |
145 input_idx = offset_idx + input_names.index(parameter) |
147 input_idx = offset_idx + input_names.index(parameter) |
146 input_info = (generator.TagName, "block", block.getlocalId(), "input", input_idx) |
148 input_info = (generator.TagName, "block", block.getlocalId(), "input", input_idx) |
147 connections = variable.connectionPointIn.getconnections() |
149 connections = variable.connectionPointIn.getconnections() |
148 if connections is not None: |
150 if connections is not None: |
149 value = generator.ComputeExpression(body, connections, executionOrderId > 0, inout_variables.has_key(parameter)) |
151 expression = generator.ComputeExpression(body, connections, executionOrderId > 0, inout_variables.has_key(parameter)) |
150 vars.append([(parameter, input_info), |
152 if expression is not None: |
151 (" := ", ())] + generator.ExtractModifier(variable, value, input_info)) |
153 vars.append([(parameter, input_info), |
|
154 (" := ", ())] + generator.ExtractModifier(variable, expression, input_info)) |
152 generator.Program += [(generator.CurrentIndent, ()), |
155 generator.Program += [(generator.CurrentIndent, ()), |
153 (name, (generator.TagName, "block", block.getlocalId(), "name")), |
156 (name, (generator.TagName, "block", block.getlocalId(), "name")), |
154 ("(", ())] |
157 ("(", ())] |
155 generator.Program += JoinList([(", ", ())], vars) |
158 generator.Program += JoinList([(", ", ())], vars) |
156 generator.Program += [(");\n", ())] |
159 generator.Program += [(");\n", ())] |