This class is used to create a configuration option on a class that inherits
from BaseConfiguration. A validator function decorated with this class will
be converted to a read-only descriptor and BaseConfiguration will implement
constructor and merging logic for that configuration option. A validator
function takes a single non-None value to validate and either throws
an exception or returns that value (or an equivalent value). A validator is
called once at construction time, but only if a non-None value for the
configuration option is specified the constructor's keyword arguments.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2022-09-30 UTC."],[[["`ConfigOption` is a descriptor class used for creating configuration options within classes that inherit from `BaseConfiguration`."],["A validator function, when decorated with `ConfigOption`, becomes a read-only descriptor, enabling validation of configuration values."],["The `__call__` method of `ConfigOption` retrieves the first non-None value for a configuration option from multiple configuration objects."],["Validation occurs during object construction, but only if a non-None value is provided for the specific configuration option."],["The validator function must accept a single, non-None value, and it either throws an exception if invalid or returns the validated value."]]],[]]