41 return e.find(k +
'[') == 0ull or
e ==
k;
67 <<
"The supplied value of the parameter:\n" 68 <<
" " << s.
key() <<
'\n' 69 <<
"does not represent a sequence.\n";
73 std::size_t
const nElems =
75 return std::regex_match(
k,
r);
93 return std::regex_search(
k,
r);
105 using key_set = std::set<std::string>;
108 removeIgnorableKeys(key_set
const& ignorable,
109 std::vector<std::string>& extra,
112 for (
auto const&
key : ignorable) {
119 if (it != extra.cend()) {
121 return key.find(subkey) == 0ul;
123 auto const end = std::find_if_not(it, extra.end(), match);
124 extra.erase(it,
end);
130 std::remove_if(missing.begin(), missing.end(), [&subkey](
auto p) {
131 return p->key() == subkey;
134 missing.erase(mit, missing.end());
141 std::size_t
const freq =
150 if (missingParams.empty())
155 std::ostringstream oss;
156 oss <<
"Missing parameters:\n";
157 for (
auto p : missingParams) {
171 std::vector<std::string>
const& extraKeys)
173 if (extraKeys.empty())
176 std::ostringstream oss;
177 oss <<
"Unsupported parameters:\n\n";
178 for (
auto const&
key : extraKeys) {
195 if (!errmsg.empty()) {
end
while True: pbar.update(maxval-len(onlies[E][S])) #print iS, "/", len(onlies[E][S]) found = False for...
void prepare_elements_for_validation(std::size_t const n)
std::string const & name() const
void enter_sequence(SequenceBase &p) override
void set_value(fhicl::ParameterSet const &ps)
bool preset_value(fhicl::ParameterSet const &ps)
std::set< std::string > ignorableKeys_
std::vector< std::string > userKeys_
std::string optional_parameter_message(bool const with_comment=true)
bool is_key_to_sequence(std::string const &key) const
std::string strip_first_containing_name(std::string const &key)
bool search_all(FwdCont const &, Datum const &)
ParameterSet const & pset_
par_type parameter_type() const
void delegated_parameter(DelegateBase &) override
bool has_key(std::string const &key) const
Q_EXPORT QTSManip setw(int w)
std::string const & key() const
std::vector< cet::exempt_ptr< ParameterBase > > missingParameters_
static std::string regex_safe(std::string const &key)
std::string get_src_info(std::string const &key) const
auto find_in_all(FwdCont &, Datum const &)
void after_action(ParameterBase &p) override
bool before_action(ParameterBase &p) override
cet::coded_exception< error, detail::translate > exception
bool is_sequence(std::any const &val)