Passed
Pull Request — main (#724)
by Osma
14:03 queued 09:45
created

annif.simplemma_util   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 16
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 10
dl 0
loc 16
rs 10
c 0
b 0
f 0
wmc 1

1 Function

Rating   Name   Duplication   Size   Complexity  
A get_language_detector() 0 2 1
1
"""Wrapper code for using Simplemma functionality in Annif"""
2
3
from simplemma import LanguageDetector, Lemmatizer
4
from simplemma.strategies import DefaultStrategy
5
from simplemma.strategies.dictionaries import DefaultDictionaryFactory
6
7
LANG_CACHE_SIZE = 5  # How many language dictionaries to keep in memory at once (max)
8
9
_dictionary_factory = DefaultDictionaryFactory(cache_max_size=LANG_CACHE_SIZE)
10
_lemmatization_strategy = DefaultStrategy(dictionary_factory=_dictionary_factory)
11
lemmatizer = Lemmatizer(lemmatization_strategy=_lemmatization_strategy)
12
13
14
def get_language_detector(lang: str) -> LanguageDetector:
15
    return LanguageDetector(lang, lemmatization_strategy=_lemmatization_strategy)
16