Beispiel #1
0
/**
   The autoloader cleanup function. It is run on shutdown and frees
   any memory used by the autoloader code to keep track of loaded
   files.
*/
static void parse_util_destroy()
{
	if( all_loaded )
	{
		hash_foreach2( all_loaded,
					   &clear_loaded_entry,
					   0 );

		hash_destroy( all_loaded );
		free( all_loaded );
		all_loaded = 0;
	}
}
Beispiel #2
0
/**
   Part of the autoloader cleanup
*/
static void clear_loaded_entry( void *key,
								void *data,
								void *handler )
{
	autoload_t *loaded = (autoload_t *)data;
	hash_foreach2( &loaded->load_time,
				   &clear_hash_value,
				   handler );
	hash_destroy( &loaded->load_time );
	hash_destroy( &loaded->is_loading );

	free( loaded->old_path );
	free( loaded );
	free( (void *)key );
}
Beispiel #3
0
void anna_hash_add_method(anna_function_t *fun)
{
    al_push(&anna_hash_additional_methods, fun);
    hash_foreach2(&anna_hash_specialization, &add_hash_method, fun);
}
Beispiel #4
0
void hash_get_keys( hash_table_t *h,
                    array_list_t *arr )
{
    hash_foreach2( h, &hash_put_key, arr );
}
Beispiel #5
0
void hash_get_data( hash_table_t *h,
                    array_list_t *arr )
{
    hash_foreach2( h, &hash_put_data, arr );
}