6#include <inflection/dialog/fwd.hpp>
7#include <inflection/dialog/SemanticFeatureConceptBase.hpp>
8#include <inflection/dialog/DisplayValue.hpp>
9#include <inflection/dialog/SemanticValue.hpp>
29 bool defaultToSemantic { };
39 const DisplayValue* getFirstPossibleValue(std::unique_ptr<DisplayValue>& generatedDisplayValue)
const;
40 const DisplayValue* getCurrentValue(std::unique_ptr<DisplayValue>& generatedDisplayValue)
const;
71 ::std::u16string
toString(
bool defaultToSemantic)
const;
Represents a display value with constraint values.
Provides a way to format a semantic value with specific display values for a given language.
virtual ::inflection::dialog::SpeakableString * toSpeakableStringDefault(bool defaultToSemantic) const
SemanticConcept(const SemanticFeatureModel *model, const SemanticValue &semantic, bool defaultToSemantic=false)
bool operator==(const SemanticConcept &o) const
SemanticConcept(const SemanticConcept &other)
virtual const ::std::u16string & getSemanticValue()
~SemanticConcept() override
::inflection::dialog::SpeakableString * getFeatureValue(const SemanticFeature &feature) const override
SemanticConcept * clone() const override
bool isExists() const override
::inflection::dialog::SpeakableString * toSpeakableString() const override
::std::u16string toString() const override
Abstract base class of SpeakableConcept with inflectable constraints.
Provides a mapping between constraints and their corresponding SemanticValue.
A semantic model that contains display data for semantic values and provides feature functions for de...
Represents a single semantic feature.
Represents an ontological label with a value.
Represents a string with both a spoken and written representation.
The C++ namespace for Inflection.