def get_insert_id(self, symbol):
    """Get the numeric id of a symbol.

    If the symbol is not present and the SymbolTable is not frozen, it is
    inserted. Then a valid id is returned, which will be either the
    id for this symbol (for an unfrozen symbol table), or the id of the
    unknown-symbol marker (for a frozen symbol table)>

    Args:
      symbol: string name of name.

    Returns:
      integer id for the symbol (or the id for the unknown_marker)
    """
    self.insert(symbol)
    return self._id_dict.get(symbol, self._unk)
Get the numeric id of a symbol.

    If the symbol is not present and the SymbolTable is not frozen, it is
    inserted. Then a valid id is returned, which will be either the
    id for this symbol (for an unfrozen symbol table), or the id of the
    unknown-symbol marker (for a frozen symbol table)>

    Args:
      symbol: string name of name.

    Returns:
      integer id for the symbol (or the id for the unknown_marker)
    
language/nql/nql/symbol.py