Ion C
C library for Ion
_ion_extractor_options Struct Reference

#include <ion_extractor.h>

Data Fields

ION_EXTRACTOR_SIZE max_path_length
 
ION_EXTRACTOR_SIZE max_num_paths
 
bool match_relative_paths
 
bool match_case_insensitive
 

Detailed Description

Extractor configuration to be supplied by the user when opening a new extractor.

Field Documentation

◆ match_case_insensitive

bool _ion_extractor_options::match_case_insensitive

If true, the extractor will treat paths as case-insensitive.

Defaults to false.

◆ match_relative_paths

bool _ion_extractor_options::match_relative_paths

If true, the extractor will accept a reader positioned at any valid depth within the data. It will match paths relative to the initial depth of the reader at the start of ion_extractor_match. For example, if a reader positioned at depth 2 at the field 'foo' in the data {abc:{foo:{bar:baz}}} is provided to an extractor with match_relative_paths=true and the registered path (bar), the extractor would match on the value baz. This extractor would finish matching once it exhausted all sibling values (none in this case) at depth 2.

If false, the extractor requires a reader positioned at depth 0.

Defaults to false.

◆ max_num_paths

ION_EXTRACTOR_SIZE _ion_extractor_options::max_num_paths

The maximum number of paths that can be registered to this extractor. Defaults to ION_EXTRACTOR_MAX_NUM_PATHS, and may not be greater than ION_EXTRACTOR_MAX_NUM_PATHS.

The closer this value is to the actual number of paths provided to the extractor, the denser the paths can be organized, which may improve performance.

◆ max_path_length

ION_EXTRACTOR_SIZE _ion_extractor_options::max_path_length

The maximum length of paths that can be registered to this extractor. Defaults to ION_EXTRACTOR_MAX_PATH_LENGTH, and may not be greater than ION_EXTRACTOR_MAX_PATH_LENGTH.

The closer this value is to the length of the longest path registered to the extractor, the denser the paths can be organized, which may improve performance.


The documentation for this struct was generated from the following file: