1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
#ifndef OPENMW_COMPONENTS_MISC_MESSAGEFORMATPARSER_H
#define OPENMW_COMPONENTS_MISC_MESSAGEFORMATPARSER_H
#include <string_view>
namespace Misc
{
class MessageFormatParser
{
protected:
enum Placeholder
{
StringPlaceholder,
IntegerPlaceholder,
FloatPlaceholder
};
enum class Notation
{
Fixed,
Scientific,
Shortest,
HexUpper,
HexLower
};
virtual void visitedPlaceholder(
Placeholder placeholder, char padding, int width, int precision, Notation notation)
= 0;
virtual void visitedCharacter(char c) = 0;
public:
virtual ~MessageFormatParser();
virtual void process(std::string_view message);
};
}
#endif
|