23 lines
669 B
C++
23 lines
669 B
C++
#pragma once
|
|
|
|
#include "ccl/lang/TextProcessor.h"
|
|
|
|
namespace xtr::core {
|
|
|
|
//! Python implementation for ccl::lang::TextProcessor
|
|
class PyTextProcessor final : public ccl::lang::TextProcessor {
|
|
bool isInit{ false };
|
|
std::string moduleKey{};
|
|
|
|
public:
|
|
void InitModule(const std::string& key);
|
|
|
|
[[nodiscard]] std::string Inflect(const std::string& target, const ccl::lang::Morphology& form) const override;
|
|
[[nodiscard]] std::string InflectDependant(const std::string& dependant, const std::string& main) const override;
|
|
[[nodiscard]] bool IsSubstr(
|
|
const std::string& needle,
|
|
const std::string& haystack
|
|
) const override;
|
|
};
|
|
|
|
} // namespace xtr::core
|