Ion C
C library for Ion
ion_catalog.h File Reference
#include "ion_types.h"
#include "ion_platform_config.h"

Go to the source code of this file.

Functions

ION_API_EXPORT iERR ion_catalog_open (hCATALOG *p_hcatalog)
 
ION_API_EXPORT iERR ion_catalog_open_with_owner (hCATALOG *p_hcatalog, hOWNER owner)
 
ION_API_EXPORT iERR ion_catalog_get_symbol_table_count (hCATALOG hcatalog, int32_t *p_count)
 
ION_API_EXPORT iERR ion_catalog_add_symbol_table (hCATALOG hcatalog, hSYMTAB symtab)
 
ION_API_EXPORT iERR ion_catalog_find_symbol_table (hCATALOG hcatalog, iSTRING name, long version, hSYMTAB *p_symtab)
 
ION_API_EXPORT iERR ion_catalog_find_best_match (hCATALOG hcatalog, iSTRING name, long version, hSYMTAB *p_symtab)
 
ION_API_EXPORT iERR ion_catalog_release_symbol_table (hCATALOG hcatalog, hSYMTAB symtab)
 
ION_API_EXPORT iERR ion_catalog_close (hCATALOG hcatalog)
 

Function Documentation

◆ ion_catalog_close()

ION_API_EXPORT iERR ion_catalog_close ( hCATALOG  hcatalog)

If the given catalog is its own memory owner, its memory and everything it owns is freed. If the given catalog has an external owner and that owner has not been freed, this does nothing; this catalog will be freed when its memory owner is freed. If the given symbol table has an external owner which has been freed, the behavior of this function is undefined.

◆ ion_catalog_open()

ION_API_EXPORT iERR ion_catalog_open ( hCATALOG *  p_hcatalog)

Allocates a new catalog with itself as its memory owner. Must be freed using ion_catalog_close.

Parameters
p_hcatalog- Pointer to a handle to the newly-allocated catalog.

◆ ion_catalog_open_with_owner()

ION_API_EXPORT iERR ion_catalog_open_with_owner ( hCATALOG *  p_hcatalog,
hOWNER  owner 
)

Allocates a new catalog with the given owner as its memory owner.

Parameters
p_hcatalog- Pointer to a handle to the newly-allocated catalog.
owner- Handle to the new catalog's memory owner. If NULL, the resulting catalog is its own memory owner and must be freed using ion_catalog_close.