IsFlexibleCase . Returns true if 'str' is: . UPPERCASE . lowercase . Capitalized
| 25 | // . lowercase |
| 26 | // . Capitalized |
| 27 | bool IsFlexibleCase(const std::string& str) { |
| 28 | if (str.empty()) |
| 29 | return true; |
| 30 | |
| 31 | if (IsEntirely(str, IsLower)) |
| 32 | return true; |
| 33 | |
| 34 | bool firstcaps = IsUpper(str[0]); |
| 35 | std::string rest = str.substr(1); |
| 36 | return firstcaps && (IsEntirely(rest, IsLower) || IsEntirely(rest, IsUpper)); |
| 37 | } |
| 38 | } // namespace |
| 39 | |
| 40 | namespace YAML { |
no test coverage detected