code: def signature(self):
          
          #We can't really do anything sensible without the name of the function
          #whose signature we are completing.
          iexec, execmod = self.context.parser.tree_find(self.context.el_name, 
                                                self.context.module, "executables")
          if iexec is None:
              #Look in the interfaces next using a tree find as well
              iexec, execmod = self.context.parser.tree_find(self.context.el_name, self.context.module,
                                                    "interfaces")
          if iexec is None:
              return []
  
          return self._signature_index(iexec)
docs: Gets completion or call signature information for the current cursor.