1/* 2 * Copyright 2010, Ingo Weinhold, ingo_weinhold@gmx.de. 3 * Distributed under the terms of the MIT License. 4 */ 5#ifndef PATTERN_EVALUATOR_H 6#define PATTERN_EVALUATOR_H 7 8 9#include <String.h> 10 11 12class PatternEvaluator { 13public: 14 class PlaceholderMapper; 15 16public: 17 static BString Evaluate(const char* pattern, 18 PlaceholderMapper& mapper); 19 20}; 21 22 23class PatternEvaluator::PlaceholderMapper { 24public: 25 virtual ~PlaceholderMapper(); 26 27 virtual bool MapPlaceholder(char placeholder, 28 int64 number, bool numberGiven, 29 BString& _string) = 0; 30}; 31 32 33#endif // PATTERN_EVALUATOR_H 34