#include std::optional TokenPool::availableToken() { if (aTokenContainer.empty()) { return std::nullopt; } Token aOutputToken{aTokenContainer.front()}; aTokenContainer.pop(); return aOutputToken; } void TokenPool::feedTokenSource(const std::string &iJsonPath) { aTokenContainer.emplace(iJsonPath); } void TokenPool::feedTokenSource(const std::span &iJsonPaths) { for (const std::string &iJsonPath : iJsonPaths) { feedTokenSource(iJsonPath); } }