1#ifndef RIME_SWITCHES_H_
2#define RIME_SWITCHES_H_
17 operator string()
const {
21 operator bool()
const {
return bool(
str) && bool(
length); }
std::shared_ptr< T > an
Definition common.h:60
Switches::SwitchOption SwitchOption
Definition switch_translator.cc:24
Definition config_component.h:21
Definition config_types.h:34
Definition config_types.h:87
Definition config_types.h:126
size_t length
Definition switches.h:15
const char * str
Definition switches.h:14
FindResult
Definition switches.h:47
@ kFound
Definition switches.h:49
@ kContinue
Definition switches.h:48
static SwitchOption Reset(const SwitchOption &option)
Definition switches.cc:92
SwitchOption ByIndex(size_t switch_index)
Definition switches.cc:63
static SwitchOption Cycle(const SwitchOption &option)
Definition switches.cc:75
static StringSlice GetStateLabel(an< ConfigMap > the_switch, size_t state_index, bool abbreviated)
Definition switches.cc:138
SwitchOption FindOption(function< FindResult(SwitchOption option)> callback)
Definition switches.cc:40
static SwitchOption FindRadioGroupOption(an< ConfigMap > the_switch, function< FindResult(SwitchOption option)> callback)
Definition switches.cc:110
Switches(Config *config)
Definition switches.h:26
SwitchType
Definition switches.h:28
@ kRadioGroup
Definition switches.h:30
@ kToggleOption
Definition switches.h:29
SwitchOption OptionByName(const string &option_name)
Definition switches.cc:57
string option_name
Definition switches.h:36
int reset_value
Definition switches.h:38
size_t option_index
Definition switches.h:42
an< ConfigMap > the_switch
Definition switches.h:34
bool found() const
Definition switches.h:44
SwitchType type
Definition switches.h:35
size_t switch_index
Definition switches.h:40