code: def _get_or_create_editor_buffer(self, location=None, text=None):
          
          assert location is None or text is None  # Don't pass two of them.
          assert location is None or isinstance(location, string_types)
  
          if location is None:
              # Create and add an empty EditorBuffer
              eb = EditorBuffer(self.editor, text=text)
              self._add_editor_buffer(eb)
  
              return eb
          else:
              # When a location is given, first look whether the file was already
              # opened.
              eb = self.get_editor_buffer_for_location(location)
  
              # Not found? Create one.
              if eb is None:
                  # Create and add EditorBuffer
                  eb = EditorBuffer(self.editor, location)
                  self._add_editor_buffer(eb)
  
                  return eb
              else:
                  # Found! Return it.
                  return eb
docs: Given a location, return the `EditorBuffer` instance that we have if
          the file is already open, or create a new one.
  
          When location is None, this creates a new buffer.