def del_node(self, name, index=None):
if isinstance(name, Node):<EOL><INDENT>name = name.get_name()<EOL><DEDENT>if name in self.obj_dict['<STR_LIT>']:<EOL><INDENT>if index is not None and index < len(self.obj_dict['<STR_LIT>'][name]):<EOL><INDENT>del self.obj_dict['<STR_LIT>'][name][index]<EOL>return True<EOL><DEDENT>else:<EOL><INDENT>del self.obj_dict['<STR_LIT>'][name]<EOL>return True<EOL><DEDENT><DEDENT>return False<EOL>
Delete a node from the graph.

        Given a node's name all node(s) with that same name
        will be deleted if 'index' is not specified or set
        to None.
        If there are several nodes with that same name and
        'index' is given, only the node in that position
        will be deleted.

        'index' should be an integer specifying the position 
        of the node to delete. If index is larger than the
        number of nodes with that name, no action is taken.

        If nodes are deleted it returns True. If no action
        is taken it returns False.