LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
CoordinationConstraints.h
Go to the documentation of this file.
1// Copyright 2002-2020 CEA LIST
2// SPDX-FileCopyrightText: 2022 CEA LIST <gael.de-chalendar@cea.fr>
3//
4// SPDX-License-Identifier: MIT
5
19#ifndef LIMA_SYNTACTICANALYSIS_SIMPLIFICATIONCONSTRAINTS_H
20#define LIMA_SYNTACTICANALYSIS_SIMPLIFICATIONCONSTRAINTS_H
21
26
27#include <iostream>
28
29namespace Lima {
30namespace LinguisticProcessing {
31namespace SyntacticAnalysis {
32
33//**********************************************************************
34// ids of constraints defined in this file
35#define DefineStringId "DefineString"
36#define SameStringId "SameString"
37#define DefineModelId "DefineModel"
38#define SetInstanceId "SetInstance"
39
40//**********************************************************************
42{
43public:
44 explicit DefineString(MediaId language,
45 const LimaString& complement=LimaString());
47
49 const LinguisticGraphVertex& v1,
50 const LinguisticGraphVertex& v2,
51 AnalysisContent& analysis) const override;
52private:
53 uint64_t m_language;
54};
55
56
57
59{
60public:
61 explicit SameString(MediaId language,
62 const LimaString& complement=LimaString());
64
66 const LinguisticGraphVertex& v1,
67 const LinguisticGraphVertex& v2,
68 AnalysisContent& analysis) const override;
69
70 bool actionNeedsRecognizedExpression() override { return true; }
71
72private:
73 uint64_t m_language;
74 const Common::PropertyCode::PropertyAccessor* m_microAccessor;
75};
76
78{
79public:
80 explicit DefineModel(MediaId language,
81 const LimaString& complement=LimaString());
83
85 const LinguisticGraphVertex& v1,
86 const LinguisticGraphVertex& v2,
87 AnalysisContent& analysis) const override;
88
89};
90
92{
93public:
94 explicit SetInstance(MediaId language,
95 const LimaString& complement=LimaString());
97
98 bool operator()(
100 const LinguisticGraphVertex& v1,
101 const LinguisticGraphVertex& v2,
102 AnalysisContent& analysis) const override;
103};
104
105
106} // end namespace SyntacticAnalysis
107} // end namespace LinguisticProcessing
108} // end namespace Lima
109
110#endif // LIMA_SYNTACTICANALYSIS_SIMPLIFICATIONCONSTRAINTS_H
LinguisticGraph::vertex_descriptor LinguisticGraphVertex
#define LIMA_SYNTACTICANALYSIS_EXPORT
Holds all data that pass through the ProcessUnits Analysis data are shared pointers,...
Provide function to read write and check a property.
An AnalysisData containing a LinguisticGraph with a language and an id.
NAUTITIA.
QString LimaString
Definition LimaString.h:33