123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- /*
- * Created by Martin on 25/07/2017.
- *
- * Distributed under the Boost Software License, Version 1.0. (See accompanying
- * file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- */
- #ifndef TWOBLUECUBES_CATCH_STRING_MANIP_H_INCLUDED
- #define TWOBLUECUBES_CATCH_STRING_MANIP_H_INCLUDED
- #include "catch_stringref.h"
- #include <string>
- #include <iosfwd>
- #include <vector>
- namespace Catch {
- bool startsWith( std::string const& s, std::string const& prefix );
- bool startsWith( std::string const& s, char prefix );
- bool endsWith( std::string const& s, std::string const& suffix );
- bool endsWith( std::string const& s, char suffix );
- bool contains( std::string const& s, std::string const& infix );
- void toLowerInPlace( std::string& s );
- std::string toLower( std::string const& s );
- //! Returns a new string without whitespace at the start/end
- std::string trim( std::string const& str );
- //! Returns a substring of the original ref without whitespace. Beware lifetimes!
- StringRef trim(StringRef ref);
- // !!! Be aware, returns refs into original string - make sure original string outlives them
- std::vector<StringRef> splitStringRef( StringRef str, char delimiter );
- bool replaceInPlace( std::string& str, std::string const& replaceThis, std::string const& withThis );
- struct pluralise {
- pluralise( std::size_t count, std::string const& label );
- friend std::ostream& operator << ( std::ostream& os, pluralise const& pluraliser );
- std::size_t m_count;
- std::string m_label;
- };
- }
- #endif // TWOBLUECUBES_CATCH_STRING_MANIP_H_INCLUDED
|