@@ -812,14 +812,6 @@ def get_node_by_output_in_current_graph(self, output):
812
812
ret = self ._nodes_by_name .get (name )
813
813
return ret
814
814
815
- def get_node_by_input_in_current_graph (self , input_name ):
816
- """Get nodes by node input id."""
817
- names = self ._output_to_node_name .get (input_name )
818
- ret = None
819
- if name :
820
- ret = [self ._nodes_by_name .get (name ) for name in names ]
821
- return ret
822
-
823
815
def get_node_by_name (self , name ):
824
816
"""Get node by name."""
825
817
ret = self ._nodes_by_name .get (name )
@@ -1195,15 +1187,20 @@ def remove_input(self, node, to_be_removed, input_index=None):
1195
1187
if node .name in to_ops :
1196
1188
to_ops .remove (node .name )
1197
1189
del node .input [input_index ]
1198
- return True
1190
+ return
1199
1191
1200
1192
for i , name in enumerate (node .input ):
1201
1193
if name == to_be_removed :
1194
+ if node .input .count (node .input [i ]) > 1 :
1195
+ raise RuntimeError (
1196
+ "Node '{}' takes multiple times the same input '{}'. "
1197
+ "This case is not handled." .format (
1198
+ node .name , node .input [i ]))
1202
1199
self ._unregister_input_name (node .input [i ], node )
1203
1200
del node .input [i ]
1204
1201
break
1202
+
1205
1203
# don't remove output from parent since others might depend on it
1206
- return True
1207
1204
1208
1205
def insert_new_node_on_input (self , node , op_type , input_name , name = None , domain = None , ** kwargs ):
1209
1206
"""Create and insert a new node into the graph.
0 commit comments