}
if (!opt.key) {
if (!(opt.flags & ALIAS)) {
// non alias without a key, silently ignoring
continue;
}
// non alias without a key, silently ignoring
if (!(opt.flags & ALIAS)) continue;
if (!key_last) {
// nothing to alias, silently ignoring
continue;
}
// nothing to alias, silently ignoring
if (!key_last) continue;
if (!trie.insert(opt.name, key_last)) {
// option not valid, silently ignoring
continue;
}
// option not valid, silently ignoring
if (!trie.insert(opt.name, key_last)) continue;
if (hidden) continue;
if (opt.flags & Option::HIDDEN) continue;
help_entries.back().push(opt.name);
} else {
if (options.count(opt.key)) {
// duplicate key, silently ignoring
continue;
}
// duplicate key, silently ignoring
if (options.count(opt.key)) continue;
if (opt.name) trie.insert(opt.name, opt.key);
options[key_last = opt.key] = &opt;