| 1271 | { |
| 1272 | public: |
| 1273 | class FileOptions |
| 1274 | { |
| 1275 | const Options* options_ = nullptr; // set in Options::fileOptions() |
| 1276 | std::string fileExtensionWithDot_ = ".txt"; |
| 1277 | friend class Options; |
| 1278 | |
| 1279 | FileOptions() = default; |
| 1280 | |
| 1281 | explicit FileOptions(std::string fileExtensionWithDot); |
| 1282 | |
| 1283 | APPROVAL_TESTS_NO_DISCARD |
| 1284 | FileOptions clone() const; |
| 1285 | |
| 1286 | public: |
| 1287 | APPROVAL_TESTS_NO_DISCARD |
| 1288 | const std::string& getFileExtension() const; |
| 1289 | |
| 1290 | APPROVAL_TESTS_NO_DISCARD |
| 1291 | Options withFileExtension(const std::string& fileExtensionWithDot) const; |
| 1292 | }; |
| 1293 | |
| 1294 | private: |
| 1295 | FileOptions fileOptions_; |