library/src/datastructures/BP-HashTable.cc
// This is a frontend to BP_HashRegAddDataToTable.  It's fine for one-off use
// but in the long run it's more computationally expensive to use than using
// BP_HashRegAddDataToTable alone (if you already have the table path).
This is a frontend to BP_HashRegAddDataToTable.  It's fine for one-off use
but in the long run it's more computationally expensive to use than using
BP_HashRegAddDataToTable alone (if you already have the table path).
This is a frontend to BP_HashRegAddDataToTable . It ' s fine for one - off use but in the long run it ' s more computationally expensive to use than using BP_HashRegAddDataToTable alone ( if you already have the table path ) .
BP_ERROR_T BP_HashRegAddDataToTableByPath
(
		P_BP_HASH_TABLE_REGISTRY hreg,
		BP_HASH_TABLE_TRAVERSAL_PATH table_path,
		char * key,
		BP_HASH_TABLE_KEYED_ENTRY_TYPE data_type,
		void * data,
		size_t data_size
)
{
	BP_GLOBAL_HASH_TABLE_OVERRIDE(ERR_FAILURE);
	if(!table_path)
		return ERR_FAILURE;
	if(!table_path[0])
		return ERR_FAILURE;
	P_BP_HASH_TABLE_KEYED_ENTRY tmp_lookup = BP_HashRegLookupTableByPath(hreg, table_path);
	if(!tmp_lookup)
		return ERR_FAILURE;
	return BP_HashRegAddDataToTable
	(
		hreg,
		tmp_lookup,
		key,
		data_type,
		data,
		data_size
	);
}
BP_ERROR_T BP_HashRegAddDataToTableByPath ( P_BP_HASH_TABLE_REGISTRY hreg , BP_HASH_TABLE_TRAVERSAL_PATH table_path , char * key , BP_HASH_TABLE_KEYED_ENTRY_TYPE data_type , void * data , size_t data_size ) { BP_GLOBAL_HASH_TABLE_OVERRIDE ( ERR_FAILURE ) ; if ( ! table_path ) return ERR_FAILURE ; if ( ! table_path [ 0 ] ) return ERR_FAILURE ; P_BP_HASH_TABLE_KEYED_ENTRY tmp_lookup = BP_HashRegLookupTableByPath ( hreg , table_path ) ; if ( ! tmp_lookup ) return ERR_FAILURE ; return BP_HashRegAddDataToTable ( hreg , tmp_lookup , key , data_type , data , data_size ) ; }
This is a frontend to BP_HashRegAddDataToTable.
This is a frontend to BP_HashRegAddDataToTable .
// macro to override hreg on null // ensure we have a table path // attempt to lookup the table // attempt to add data to the specified table