Ion C
C library for Ion
ion_catalog.h
Go to the documentation of this file.
1 /*
2  * Copyright 2011-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License").
5  * You may not use this file except in compliance with the License.
6  * A copy of the License is located at:
7  *
8  * http://aws.amazon.com/apache2.0/
9  *
10  * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific
12  * language governing permissions and limitations under the License.
13  */
14 
17 #ifndef ION_CATALOG_H_
18 #define ION_CATALOG_H_
19 
20 #include "ion_types.h"
21 #include "ion_platform_config.h"
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
27 // Ion Symbol Catalog implementation
28 //
29 
34 ION_API_EXPORT iERR ion_catalog_open (hCATALOG *p_hcatalog);
35 
42 ION_API_EXPORT iERR ion_catalog_open_with_owner (hCATALOG *p_hcatalog, hOWNER owner);
43 ION_API_EXPORT iERR ion_catalog_get_symbol_table_count (hCATALOG hcatalog, int32_t *p_count);
44 ION_API_EXPORT iERR ion_catalog_add_symbol_table (hCATALOG hcatalog, hSYMTAB symtab);
45 ION_API_EXPORT iERR ion_catalog_find_symbol_table (hCATALOG hcatalog, iSTRING name, long version, hSYMTAB *p_symtab);
46 ION_API_EXPORT iERR ion_catalog_find_best_match (hCATALOG hcatalog, iSTRING name, long version, hSYMTAB *p_symtab); // or newest version of a symtab pass in version == 0
47 ION_API_EXPORT iERR ion_catalog_release_symbol_table (hCATALOG hcatalog, hSYMTAB symtab);
48 
55 ION_API_EXPORT iERR ion_catalog_close (hCATALOG hcatalog);
56 
57 #ifdef __cplusplus
58 }
59 #endif
60 
61 #endif /* ION_CATALOG_H_ */
ION_API_EXPORT iERR ion_catalog_close(hCATALOG hcatalog)
ION_API_EXPORT iERR ion_catalog_open_with_owner(hCATALOG *p_hcatalog, hOWNER owner)
ION_API_EXPORT iERR ion_catalog_open(hCATALOG *p_hcatalog)
Definition: ion_string.h:40