SectionPairFileExtensionValidator.cpp 1.2 KB

12345678910111213141516171819202122232425262728293031
  1. /*
  2. * Author: Patrick-Christopher Mattulat
  3. * Co-Author: Claude Sonnet 4.6 (LLM)
  4. * Company: Lynar Studios
  5. * E-Mail: webmaster@lynarstudios.com
  6. * Created: 2023-02-21
  7. * Changed: 2026-06-23
  8. *
  9. * */
  10. #include <ls-std/io/section-pair/validator/SectionPairFileExtensionValidator.hpp>
  11. using ls::standard::core::Class;
  12. using ls::standard::io::SectionPairFileExtensionValidator;
  13. using std::move;
  14. using std::string;
  15. SectionPairFileExtensionValidator::SectionPairFileExtensionValidator(string _fileName) : Class("SectionPairFileExtensionValidator"), fileName(::move(_fileName))
  16. {}
  17. SectionPairFileExtensionValidator::~SectionPairFileExtensionValidator() noexcept = default;
  18. bool SectionPairFileExtensionValidator::isValid()
  19. {
  20. const string textFileExtension = ".txt";
  21. const string sectionPairFileExtension = ".sp";
  22. const bool endsWithTextFileExtension = this->fileName.rfind(textFileExtension) == (this->fileName.size() - textFileExtension.size());
  23. const bool endsWithSectionPairFileExtension = this->fileName.rfind(sectionPairFileExtension) == (this->fileName.size() - sectionPairFileExtension.size());
  24. return endsWithTextFileExtension || endsWithSectionPairFileExtension;
  25. }