21#ifndef ION_EXTRACTOR_H
22#define ION_EXTRACTOR_H
27#ifdef ION_EXTRACTOR_MAX_PATH_LENGTH_LIMIT
28 #undef ION_EXTRACTOR_MAX_PATH_LENGTH_LIMIT
31#ifdef ION_EXTRACTOR_MAX_NUM_PATHS_LIMIT
32 #undef ION_EXTRACTOR_MAX_NUM_PATHS_LIMIT
40#define ION_EXTRACTOR_MAX_PATH_LENGTH_LIMIT UINT16_MAX
47#define ION_EXTRACTOR_MAX_NUM_PATHS_LIMIT UINT16_MAX
49#ifdef ION_EXTRACTOR_MAX_PATH_LENGTH_DEFAULT
50 #undef ION_EXTRACTOR_MAX_PATH_LENGTH_DEFAULT
53#ifdef ION_EXTRACTOR_MAX_NUM_PATHS_DEFAULT
54 #undef ION_EXTRACTOR_MAX_NUM_PATHS_DEFAULT
64#define ION_EXTRACTOR_MAX_PATH_LENGTH_DEFAULT DEFAULT_WRITER_STACK_DEPTH
70#define ION_EXTRACTOR_MAX_NUM_PATHS_DEFAULT 16
81#ifndef ION_EXTRACTOR_MAX_PATH_LENGTH
82 #define ION_EXTRACTOR_MAX_PATH_LENGTH ION_EXTRACTOR_MAX_PATH_LENGTH_DEFAULT
84 #if ION_EXTRACTOR_MAX_PATH_LENGTH > ION_EXTRACTOR_MAX_PATH_LENGTH_LIMIT
85 #undef ION_EXTRACTOR_MAX_PATH_LENGTH
86 #define ION_EXTRACTOR_MAX_PATH_LENGTH ION_EXTRACTOR_MAX_PATH_LENGTH_LIMIT
87 #elif ION_EXTRACTOR_MAX_PATH_LENGTH < 1
88 #undef ION_EXTRACTOR_MAX_PATH_LENGTH
89 #define ION_EXTRACTOR_MAX_PATH_LENGTH ION_EXTRACTOR_MAX_PATH_LENGTH_DEFAULT
102#ifndef ION_EXTRACTOR_MAX_NUM_PATHS
103 #define ION_EXTRACTOR_MAX_NUM_PATHS ION_EXTRACTOR_MAX_NUM_PATHS_DEFAULT
105 #if ION_EXTRACTOR_MAX_NUM_PATHS > ION_EXTRACTOR_MAX_NUM_PATHS_LIMIT
106 #undef ION_EXTRACTOR_MAX_NUM_PATHS
107 #define ION_EXTRACTOR_MAX_NUM_PATHS ION_EXTRACTOR_MAX_NUM_PATHS_LIMIT
108 #elif ION_EXTRACTOR_MAX_NUM_PATHS < 1
109 #undef ION_EXTRACTOR_MAX_NUM_PATHS
110 #define ION_EXTRACTOR_MAX_NUM_PATHS ION_EXTRACTOR_MAX_NUM_PATHS_DEFAULT
215 return ion_extractor_control_step_out(0);
349 void *user_context, BYTE *ion_data, SIZE ion_data_length,
Definition ion_string.h:40