diff options
author | Vito Caputo <vcaputo@pengaru.com> | 2023-08-03 00:55:59 -0700 |
---|---|---|
committer | Vito Caputo <vcaputo@pengaru.com> | 2023-08-03 00:55:59 -0700 |
commit | 81f6fd2208cbed6ac8f7e77b2f0b8dd7ac741fe3 (patch) | |
tree | fccb815ca92e9983f086f3c39ddcd05c3a5f38f8 /src/modules/drizzle | |
parent | 70cc48ba418d69127e3a1d82415785c5964d9448 (diff) |
til_settings: introduce til_setting_t.nocheck
This adds a setting value syntax for bypassing checks; ':' prefix
e.g.
--module=:experimental_module
Would result in the value experimental_module added, and no
verification performed of its presence in the module setting's
values list.
Two new til_settings api functions are introduced as well for
setting and getting the raw values including any prefix syntax:
til_setting_get_raw_value()
til_setting_set_raw_value()
these are needed because the til_setting_t.value member will
continue to point at the "cooked" form of the value with the
prefix stripped out, so the general cases of needing the value
won't have to worry about the presence of prefixes. They have
the til_setting_t.nocheck member to see if the setting was a
nocheck-prefixed value.
The nocheck prefix is preserved across serialization as well. So
using a serialized form to seed a derivative settings instance
won't spuriously start failing checks because the ':' prefixes
are gone where they were necessary. They'll be kept wherever
they were previously.
There will probably be some more random fixes needed here and
there where code is directly manipulating til_setting_t.value and
must now go through the "raw" getter/setter api.
Diffstat (limited to 'src/modules/drizzle')
0 files changed, 0 insertions, 0 deletions