1 /* Copyright (C) 2001-2019 Artifex Software, Inc.
2    All Rights Reserved.
3 
4    This software is provided AS-IS with no warranty, either express or
5    implied.
6 
7    This software is distributed under license and may not be copied,
8    modified or distributed except as expressly authorized under the terms
9    of the license contained in the file LICENSE in this distribution.
10 
11    Refer to licensing information at http://www.artifex.com or contact
12    Artifex Software, Inc.,  1305 Grant Avenue - Suite 200, Novato,
13    CA 94945, U.S.A., +1(415)492-9861, for further information.
14 */
15 
16 
17 /* Dictionary API with implicit dict_stack argument */
18 
19 #ifndef iddict_INCLUDED
20 #  define iddict_INCLUDED
21 
22 #include "idict.h"
23 #include "icstate.h"		/* for access to dict_stack */
24 
25 /* Define the dictionary stack instance for operators. */
26 #define idict_stack (i_ctx_p->dict_stack)
27 
28 #define idict_put(pdref, key, pvalue)\
29   dict_put(pdref, key, pvalue, &idict_stack)
30 #define idict_put_string(pdref, kstr, pvalue)\
31   dict_put_string(pdref, kstr, pvalue, &idict_stack)
32 #define idict_put_string_copy(pdref, kstr, pvalue)\
33   dict_put_string_copy(pdref, kstr, pvalue, &idict_stack)
34 #define idict_undef(pdref, key)\
35   dict_undef(pdref, key, &idict_stack)
36 #define idict_copy(dfrom, dto)\
37   dict_copy(dfrom, dto, &idict_stack)
38 #define idict_copy_new(dfrom, dto)\
39   dict_copy_new(dfrom, dto, &idict_stack)
40 #define idict_resize(pdref, newmax)\
41   dict_resize(pdref, newmax, &idict_stack)
42 #define idict_grow(pdref)\
43   dict_grow(pdref, &idict_stack)
44 #define idict_unpack(pdref)\
45   dict_unpack(pdref, &idict_stack)
46 
47 #endif /* iddict_INCLUDED */
48