Backendmanager implementation

This commit is contained in:
Thomas Ave 2016-05-25 21:50:34 +02:00
parent daddd47c43
commit fe6b242501
2 changed files with 16 additions and 0 deletions

View File

@ -9,6 +9,7 @@ add_executable(Lexesis
main.cpp
automata.cpp
backend.cpp
backendmanager.cpp
re.cpp
inputparser.cpp
template.cpp

15
src/backendmanager.cpp Normal file
View File

@ -0,0 +1,15 @@
#include "Lexesis/backendmanager.h"
#include "Lexesis/backend.h"
namespace lxs {
void BackendManager::registerBackend(std::unique_ptr<Backend> backend) {
m_backends.push_back(std::move(backend));
}
Backend* BackendManager::findBackendForLang(std::string lang) {
for(std::unique_ptr<Backend> &backend: m_backends) {
if(backend->canProcessLang(lang)) return backend.get();
}
return nullptr;
}
}