'The `observer` parameter is a function or bound method which takes two
arguments, the source and offset of the current line.'

def attach_observer(self, observer):

    self.observers.append(observer)
