carb::dictionary
-
namespace dictionary
Namespace for carb::dictionary::IDictionary related interfaces and helpers.
Classes
carb::dictionary::ScopedRead: A helper class for calling readLock() and unlock().
carb::dictionary::ScopedWrite: A helper class for calling writeLock() and unlock().
Enumerations
carb::dictionary::ChangeEventType: Type of a change passed to a subscription callback.
carb::dictionary::ItemFlag: Item flags that can be specified by the user.
carb::dictionary::ItemType: Supported item types.
carb::dictionary::UpdateAction: Actions that may be returned by OnUpdateItemFn.
carb::dictionary::WalkerMode: Mode names for the ways to walk the requested dictionary.
Functions
carb::dictionary::createDictionaryFromFile: Attempts to read the contents of a file into a dictionary.
carb::dictionary::dumpToString: Writes a dictionary to a string.
carb::dictionary::getCachedDictionaryInterface: helper function to retrieve the IDictionary interface.
carb::dictionary::getChildByIndex: Specialization for the getChildByIndex() callback that implements a simple retrieval of the requested child item using IDictionary::getItemChildByIndex() .
carb::dictionary::getChildByIndex: Prototype for a callback function used to walk children in a dictionary.
carb::dictionary::getItemFullPath: Retrieves the full path to dictionary item from its top-most ancestor.
carb::dictionary::getStringArray: Attempts to retrieve an array of string values from a given dictionary path.
carb::dictionary::getStringArray: Attempts to retrieve an array of string values from a given dictionary path.
carb::dictionary::getStringFromItemName: Attempts to retrieve the name of an item from a given path in a dictionary.
carb::dictionary::getStringFromItemValue: Attempts to retrieve the value of an item from a given path in a dictionary.
carb::dictionary::getValueOrDefault: Gets a child value from a given Item if present, otherwise returns the given default value.
carb::dictionary::keepOriginal: Function that indicates that the merger should retain the existing destination item.
carb::dictionary::makeStringArrayAtPath: Set a string array at the given path with the given array (creating it if it doesn't yet exist).
carb::dictionary::overwriteOriginal: Note that this function does not properly handle overwriting of arrays due to overwriting array being shorter, potentially leaving part of the older array in-place after the merge Use overwriteOriginalWithArrayHandling() if dictionaries are expected to contain array data.
carb::dictionary::overwriteOriginalWithArrayHandling: Helper function for IDictionary::update() that ensures arrays are properly overwritten.
carb::dictionary::saveFileFromDictionary: Writes the contents of a dictionary to a file.
carb::dictionary::setDictionaryArrayElementFromStringValue: Parses a string representation of an array and sets it relative to a dictionary path.
carb::dictionary::setDictionaryElementAutoType: Attempts to set a value in a dictionary with an attempt to detect the value type.
carb::dictionary::setDictionaryFromCmdLine: Parses a set of command line arguments for dictionary items arguments and sets them.
carb::dictionary::setDictionaryFromStringMapping: Sets a series of values in a dictionary based on keys and values in a map object.
carb::dictionary::setStringArray: Sets an array of values at a given path relative to a dictionary item.
carb::dictionary::setStringArray: Sets an array of values at a given path relative to a dictionary item.
carb::dictionary::toItemType: Helper function to convert a data type to a corresponding dictionary item type.
carb::dictionary::toItemType< bool >: Specialization for an
bool
item value.carb::dictionary::toItemType< char * >: Specialization for an
char*
item value.carb::dictionary::toItemType< const char * >: Specialization for an
const char*
item value.carb::dictionary::toItemType< double >: Specialization for an
double
item value.carb::dictionary::toItemType< float >: Specialization for an
float
item value.carb::dictionary::toItemType< int32_t >: Specialization for an
int32_t
item value.carb::dictionary::toItemType< int64_t >: Specialization for an
int64_t
item value.carb::dictionary::unsubscribeTreeFromAllEvents: Unsubscribes all items in a dictionary tree from change notifications.
carb::dictionary::walkDictionary: Walk a dictionary item to enumerate all of its values.
Structs
carb::dictionary::IDictionary: DOM-style dictionary (keeps the whole structure in-memory).
carb::dictionary::ISerializer: Interface intended to serialize dictionary objects to and from plain C strings.
carb::dictionary::Item: Structure used in opaque pointers to each dictionary node.
carb::dictionary::SubscriptionId: Opaque value representing a subscription.
Typedefs
carb::dictionary::DeserializerOptions: Flags for deserializing a string (for ISerializer::createDictionaryFromStringBuffer() )
carb::dictionary::OnItemFn: Prototype for a callback function used to walk items in a dictionary.
carb::dictionary::OnNodeChangeEventFn: A callback that, once registered with subscribeToNodeChangeEvents(), receives callbacks when Items change.
carb::dictionary::OnTreeChangeEventFn: A callback that, once registered with subscribeToTreeChangeEvents(), receives callbacks when Items change.
carb::dictionary::OnUpdateItemFn: Function that will tell whether the merger should overwrite the destination item with the source item.
carb::dictionary::SerializerOptions: Base type for flags for the ISerializer::createStringBufferFromDictionary() function.
Variables
carb::dictionary::fDeserializerOptionInSitu: Flag that indicates that the
const char* string
value can actually be considered aschar*
and treated destructively (allow in-situ modification by the deserializer).carb::dictionary::fSerializerOptionEmptyDictionaryIsArray: Flag to indicate that if an empty dictionary item is found while walking the dictionary that is being serialized, it should be represented by an empty array.
carb::dictionary::fSerializerOptionIncludeCollectionName: Deprecated flag name for fSerializerOptionIncludeDictionaryName .
carb::dictionary::fSerializerOptionIncludeDictionaryName: Flags to affect the behavior of the ISerializer::createStringBufferFromDictionary() function.
carb::dictionary::fSerializerOptionMakePretty: Flag to indicate that the generated string should be formatted to be human readable and look 'pretty'.
carb::dictionary::fSerializerOptionSerializeInfinityAsNull: Flag to indicate that the JSON serializer should write out infinity and NaN floating point values as a null object.
carb::dictionary::kDeserializerOptionNone: Default value for DeserializerOptions that specifies no options.
carb::dictionary::kSerializerOptionEmptyDictionaryIsArray: Deprecated flag.
carb::dictionary::kSerializerOptionIncludeCollectionName: Deprecated flag.
carb::dictionary::kSerializerOptionIncludeDictionaryName: Deprecated serializer option flag names.
carb::dictionary::kSerializerOptionMakePretty: Deprecated flag.
carb::dictionary::kSerializerOptionSerializeInfinityAsNull: Deprecated flag.
carb::dictionary::kUpdateItemKeepOriginal: Alias for keepOriginal() .
carb::dictionary::kUpdateItemOverwriteOriginal: Alias for overwriteOriginal() .