Grid Community Toolkit  6.2.1607800521 (tag: v6.2.20201212)
globus_symboltable.h
Go to the documentation of this file.
1 /*
2  * Copyright 1999-2006 University of Chicago
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  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
22 #ifndef GLOBUS_SYMBOLTABLE_H
23 #define GLOBUS_SYMBOLTABLE_H
24 
25 #include "globus_hashtable.h"
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
31 struct globus_symboltable_s;
32 typedef struct globus_symboltable_s * globus_symboltable_t;
33 
34 extern int
35 globus_symboltable_init(
36  globus_symboltable_t * table,
39 
40 
41 extern void *
42 globus_symboltable_lookup (globus_symboltable_t *table, void *symbol);
43 
44 extern int
45 globus_symboltable_insert (globus_symboltable_t *table,
46  void *symbol,
47  void *datum);
48 
49 extern void *
50 globus_symboltable_remove (globus_symboltable_t *table, void *symbol);
51 
52 
53 extern int
54 globus_symboltable_create_scope (globus_symboltable_t *table);
55 
56 extern int
57 globus_symboltable_remove_scope (globus_symboltable_t *table);
58 
59 
60 extern int
61 globus_symboltable_destroy (globus_symboltable_t *table);
62 
63 
64 #ifdef __cplusplus
65 }
66 #endif
67 
68 #endif /* GLOBUS_SYMBOLTABLE_H */
int(* globus_hashtable_hash_func_t)(void *key, int limit)
Definition: globus_hashtable.h:58
int(* globus_hashtable_keyeq_func_t)(void *key1, void *key2)
Definition: globus_hashtable.h:70
Hash Table.