1*5191bae9SZane Shelley #include <nlohmann/json.hpp> 2*5191bae9SZane Shelley 3*5191bae9SZane Shelley #include <filesystem> 4*5191bae9SZane Shelley 5*5191bae9SZane Shelley namespace util 6*5191bae9SZane Shelley { 7*5191bae9SZane Shelley 8*5191bae9SZane Shelley /** 9*5191bae9SZane Shelley * @brief Returns a list of files in the given directory, matching the given 10*5191bae9SZane Shelley * search string. 11*5191bae9SZane Shelley * @param i_dirPath The target directory. 12*5191bae9SZane Shelley * @param i_matchString Matching search pattern. 13*5191bae9SZane Shelley * @param o_foundPaths The returned list of found file paths. 14*5191bae9SZane Shelley */ 15*5191bae9SZane Shelley void findFiles(const std::filesystem::path& i_dirPath, 16*5191bae9SZane Shelley const std::string& i_matchString, 17*5191bae9SZane Shelley std::vector<std::filesystem::path>& o_foundPaths); 18*5191bae9SZane Shelley 19*5191bae9SZane Shelley /** 20*5191bae9SZane Shelley * @brief Validates the given JSON file against the given schema. 21*5191bae9SZane Shelley * @param i_schema Target schema document. 22*5191bae9SZane Shelley * @param i_json Target JSON file. 23*5191bae9SZane Shelley * @return True, if validation successful. False, otherwise. 24*5191bae9SZane Shelley */ 25*5191bae9SZane Shelley bool validateJson(const nlohmann::json& i_schema, const nlohmann::json& i_json); 26*5191bae9SZane Shelley 27*5191bae9SZane Shelley } // namespace util 28