code: def create_symbol(self, *args, **kwargs):
          
          if not kwargs.get('project_name'):
              kwargs['project_name'] = self.project.project_name
  
          sym = self.app.database.create_symbol(*args, **kwargs)
          if sym:
              # pylint: disable=unidiomatic-typecheck
              if type(sym) != Symbol:
                  self._created_symbols[sym.filename].add(sym.unique_name)
  
          return sym
docs: Extensions that discover and create instances of `symbols.Symbol`
          should do this through this method, as it will keep an index
          of these which can be used when generating a "naive index".
  
          See `database.Database.create_symbol` for more
          information.
  
          Args:
              args: see `database.Database.create_symbol`
              kwargs: see `database.Database.create_symbol`
  
          Returns:
              symbols.Symbol: the created symbol, or `None`.