private int deleteExecutable(ExecutableRecord erec, List<FunctionDescription> funclist,
			boolean hasCategories) throws SQLException {

		if (hasCategories) {
			exeCategoryTable.delete(erec.getRowId().getLong());
		}
		if (trackcallgraph) {
			for (FunctionDescription element : funclist) {
				callgraphTable.delete(element.getId().getLong());
			}
		}
		return deleteExeRows(erec);
	}
@param erec the exectuable record representing the exec to delete
@param funclist list of functions to remove from the callgraph table
@param hasCategories if true, deletes entries from the category table
@return the number of rows deleted
@throws SQLException if there's an error deleting rows
Ghidra/Features/BSim/src/main/java/ghidra/features/bsim/query/client/AbstractSQLFunctionDatabase.java