LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
MultiLevelAnalysisDictionaryIterators.h
Go to the documentation of this file.
1
// Copyright 2002-2013 CEA LIST
2
// SPDX-FileCopyrightText: 2022 CEA LIST <gael.de-chalendar@cea.fr>
3
//
4
// SPDX-License-Identifier: MIT
5
6
/***************************************************************************
7
* Copyright (C) 2004-2012 by CEA LIST *
8
* *
9
***************************************************************************/
10
#ifndef LIMA_LINGUISTICPROCESSING_ANALYSISDICT_MULTILEVELANALYSISDICTIONARYITERATOR_H
11
#define LIMA_LINGUISTICPROCESSING_ANALYSISDICT_MULTILEVELANALYSISDICTIONARYITERATOR_H
12
13
#include "
AnalysisDictExport.h
"
14
#include "
linguisticProcessing/LinguisticProcessingCommon.h
"
15
#include "
AnalysisDictionaryIterators.h
"
16
#include "
MultiLevelAnalysisDictionary.h
"
17
#include "
MultiLevelAnalysisDictionaryEntry.h
"
18
#include "
common/misc/AbstractAccessIterators.h
"
19
20
namespace
Lima
21
{
22
23
namespace
LinguisticProcessing
24
{
25
26
namespace
AnalysisDict
27
{
28
32
class
LIMA_ANALYSISDICT_EXPORT
MultiLevelAnalysisDictionarySubWordIterator
:
public
AbstractDictionarySubWordIterator
33
{
34
public
:
35
MultiLevelAnalysisDictionarySubWordIterator
(
36
const
std::vector<std::pair<Common::AccessSubWordIterator,Common::AccessSubWordIterator> >& accessItr,
37
const
MultiLevelAnalysisDictionary
& dico);
38
39
virtual
~MultiLevelAnalysisDictionarySubWordIterator
();
40
41
virtual
const
std::pair<uint64_t,DictionaryEntry> operator*()
const override
;
42
MultiLevelAnalysisDictionarySubWordIterator
& operator++(
int
i)
override
;
43
bool
operator==(
const
AbstractDictionarySubWordIterator
& it)
const override
;
44
bool
operator!=(
const
AbstractDictionarySubWordIterator
& it)
const override
;
45
46
virtual
AbstractDictionarySubWordIterator
* clone()
const override
;
47
48
private
:
49
50
// ce vector doit contenir un iterator par niveau dans le dictionnaire
51
std::vector<std::pair<Common::AccessSubWordIterator,Common::AccessSubWordIterator> > m_accessItrs;
52
const
MultiLevelAnalysisDictionary
& m_dico;
53
};
54
55
class
LIMA_ANALYSISDICT_EXPORT
MultiLevelAnalysisDictionarySuperWordIterator
:
public
AbstractDictionarySuperWordIterator
56
{
57
public
:
58
59
MultiLevelAnalysisDictionarySuperWordIterator
(
60
const
std::vector<Common::AccessSuperWordIterator>& i);
61
MultiLevelAnalysisDictionarySuperWordIterator
(
const
MultiLevelAnalysisDictionarySuperWordIterator
& source);
62
virtual
~MultiLevelAnalysisDictionarySuperWordIterator
();
63
64
virtual
const
LimaString
operator*()
const override
;
65
MultiLevelAnalysisDictionarySuperWordIterator
& operator++(
int
i)
override
;
66
bool
operator==(
const
AbstractDictionarySuperWordIterator
& it)
const override
;
67
bool
operator!=(
const
AbstractDictionarySuperWordIterator
& it)
const override
;
68
69
virtual
AbstractDictionarySuperWordIterator
* clone()
const override
;
70
71
private
:
72
73
std::vector<Common::AccessSuperWordIterator> m_accessItrs;
74
75
};
76
77
}
78
79
}
80
81
}
82
83
#endif
AbstractAccessIterators.h
AnalysisDictExport.h
LIMA_ANALYSISDICT_EXPORT
#define LIMA_ANALYSISDICT_EXPORT
Definition
AnalysisDictExport.h:27
AnalysisDictionaryIterators.h
LinguisticProcessingCommon.h
MultiLevelAnalysisDictionaryEntry.h
MultiLevelAnalysisDictionary.h
Lima::LinguisticProcessing::AnalysisDict::AbstractDictionarySubWordIterator
iterator on subwords
Definition
AnalysisDictionaryIterators.h:30
Lima::LinguisticProcessing::AnalysisDict::AbstractDictionarySuperWordIterator
iterator on superwords
Definition
AnalysisDictionaryIterators.h:53
Lima::LinguisticProcessing::AnalysisDict::MultiLevelAnalysisDictionarySubWordIterator
Definition
MultiLevelAnalysisDictionaryIterators.h:33
Lima::LinguisticProcessing::AnalysisDict::MultiLevelAnalysisDictionarySuperWordIterator
Definition
MultiLevelAnalysisDictionaryIterators.h:56
Lima::LinguisticProcessing::AnalysisDict::MultiLevelAnalysisDictionary
Definition
MultiLevelAnalysisDictionary.h:29
Lima
NAUTITIA.
Definition
AmosePluginsManager.h:15
Lima::LimaString
QString LimaString
Definition
LimaString.h:33
lima_linguisticprocessing
src
linguisticProcessing
core
AnalysisDict
MultiLevelAnalysisDictionaryIterators.h
Generated by
1.9.8