| Inflection
    Morphology Inflection | 
Abstract base class of SpeakableConcept with inflectable constraints. More...
#include <SemanticFeatureConceptBase.hpp>
 Inheritance diagram for inflection::dialog::SemanticFeatureConceptBase:
 Inheritance diagram for inflection::dialog::SemanticFeatureConceptBase:| Public Member Functions | |
| virtual const SemanticFeatureModel * | getModel () const | 
| virtual const ::std::u16string * | getConstraint (const SemanticFeature &feature) const | 
| virtual bool | hasConstraint (const SemanticFeature &feature) const | 
| virtual void | putConstraint (const SemanticFeature &feature, ::std::u16string_view featureValue) | 
| virtual void | putConstraintByName (::std::u16string_view featureName, ::std::u16string_view featureValue) | 
| virtual void | clearConstraint (const SemanticFeature &feature) | 
| virtual void | clearConstraintByName (::std::u16string_view featureName) | 
| virtual bool | isExists () const =0 | 
| virtual void | reset () | 
| virtual SpeakableString * | getFeatureValue (const SemanticFeature &feature) const =0 | 
| virtual SpeakableString * | getFeatureValueByName (::std::u16string_view featureName) const | 
| virtual SemanticFeatureConceptBase * | clone () const =0 | 
| SemanticFeatureConceptBase (const SemanticFeatureModel *model) | |
| SemanticFeatureConceptBase (const SemanticFeatureConceptBase &other) | |
| ~SemanticFeatureConceptBase () override | |
|  Public Member Functions inherited from inflection::dialog::SpeakableConcept | |
| virtual SpeakableString * | toSpeakableString () const =0 | 
| ~SpeakableConcept () override | |
|  Public Member Functions inherited from inflection::Object | |
| virtual ::std::u16string | toString () const | 
| virtual | ~Object () | 
| Protected Member Functions | |
| virtual const SemanticFeature * | getSpeakFeature () const | 
| Protected Attributes | |
| ::std::map< SemanticFeature, ::std::u16string > | constraints { } | 
Abstract base class of SpeakableConcept with inflectable constraints.
This abstract base class allows a SemanticFeatureConcept to be constrained with the possible semantic features and format to a value to display/speak. A SemanticFeature could be grammatical gender, grammatical number, grammatical number or other relevant semantic feature.
Definition at line 19 of file SemanticFeatureConceptBase.hpp.
| 
 | explicit | 
This constructor for the abstract class should be called by the subclasses.
| model | The SemanticFeatureModel that provides all of the features, valid constraints, default functions and other relevant information for a given language. | 
| inflection::dialog::SemanticFeatureConceptBase::SemanticFeatureConceptBase | ( | const SemanticFeatureConceptBase & | other | ) | 
Copy constructor
| 
 | override | 
Destructor
| 
 | virtual | 
Clear the specified semantic constraint feature.
| feature | The semantic feature of the constraint to be cleared. | 
Reimplemented in inflection::dialog::SemanticConceptList.
| 
 | virtual | 
Clear the specified semantic constraint feature by the given feature name.
| featureName | The name of the constraint to be cleared. | 
| 
 | pure virtual | 
Return a clone of this object with a deep copy of the constraints.
Implemented in inflection::dialog::InflectableStringConcept, inflection::dialog::PronounConcept, inflection::dialog::SemanticConcept, and inflection::dialog::SemanticConceptList.
| 
 | virtual | 
Get the value of the semantic feature.
| feature | The semantic feature object. | 
| 
 | pure virtual | 
Returns the String value of the specified feature for this concept, given its current constraints
Implemented in inflection::dialog::InflectableStringConcept, inflection::dialog::PronounConcept, inflection::dialog::SemanticConcept, and inflection::dialog::SemanticConceptList.
| 
 | virtual | 
Returns the String value of the specified feature for this concept, given its current constraints. The featureName will be automatically converted to a SemanticFeature for lookup.
| 
 | virtual | 
Returns the SemanticFeatureModel used to create this string.
| 
 | protectedvirtual | 
The semantic feature for the spoken form of a string.
| 
 | virtual | 
Check if the semantic feature has been added as a constraint.
| feature | The semantic feature object. | 
| 
 | pure virtual | 
Returns true if a value exists for the given constraints 
Implemented in inflection::dialog::InflectableStringConcept, inflection::dialog::PronounConcept, inflection::dialog::SemanticConcept, and inflection::dialog::SemanticConceptList.
| 
 | virtual | 
Add a semantic feature with a value as a constraint.
| feature | The semantic feature object of the constraint to be added. | 
| featureValue | The value of the feature. | 
Reimplemented in inflection::dialog::SemanticConceptList.
| 
 | virtual | 
Add a semantic feature with a value as a constraint by the name of the SemanticFeature.
| featureName | The name of the feature. | 
| featureValue | The value of the feature. | 
| 
 | virtual | 
Clear all constraints imposed on this SemanticFeatureConcept.
Reimplemented in inflection::dialog::SemanticConceptList.
| 
 | protected | 
All the constraints
Definition at line 33 of file SemanticFeatureConceptBase.hpp.