/* * Copyright (c) 2011 Vlad Voicu * Licensed under the Simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #include <SwifTools/SpellParser.h> #include <boost/algorithm/string.hpp> #include <boost/tuple/tuple.hpp> #include <vector> #pragma once namespace Swift { class SpellChecker { public: SpellChecker() { parser_ = new SpellParser(); } virtual ~SpellChecker() { delete parser_; } virtual bool isCorrect(const std::string& word) = 0; virtual void getSuggestions(const std::string& word, std::vector<std::string>& list) = 0; virtual void checkFragment(const std::string& fragment, PositionPairList& misspelledPositions) = 0; protected: SpellParser *parser_; }; }