diff options
author | Star Rauchenberger <fefferburbia@gmail.com> | 2022-12-14 10:12:03 -0500 |
---|---|---|
committer | Star Rauchenberger <fefferburbia@gmail.com> | 2022-12-14 10:42:27 -0500 |
commit | 2f938ddd17190497e21194a0ef3e1cfa14f68943 (patch) | |
tree | 156fa6371a4071bb652cf33823c9e5a5a19bfdff /lib/word.cpp | |
parent | 06e4672540094a851542b47abaf022f934b63b09 (diff) | |
download | verbly-2f938ddd17190497e21194a0ef3e1cfa14f68943.tar.gz verbly-2f938ddd17190497e21194a0ef3e1cfa14f68943.tar.bz2 verbly-2f938ddd17190497e21194a0ef3e1cfa14f68943.zip |
Fixed uncopyable word class
Diffstat (limited to 'lib/word.cpp')
-rw-r--r-- | lib/word.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/word.cpp b/lib/word.cpp index 60657ba..2fccb9f 100644 --- a/lib/word.cpp +++ b/lib/word.cpp | |||
@@ -44,7 +44,7 @@ namespace verbly { | |||
44 | return field::joinThroughWhere(object::word, "lemma_id", object::form, "lemmas_forms", "form_id", "category", static_cast<int>(category)); | 44 | return field::joinThroughWhere(object::word, "lemma_id", object::form, "lemmas_forms", "form_id", "category", static_cast<int>(category)); |
45 | } | 45 | } |
46 | 46 | ||
47 | word::word(const database& db, hatkirby::row row) : db_(db), valid_(true) | 47 | word::word(const database& db, hatkirby::row row) : db_(&db), valid_(true) |
48 | { | 48 | { |
49 | id_ = mpark::get<int>(row[0]); | 49 | id_ = mpark::get<int>(row[0]); |
50 | 50 | ||
@@ -104,7 +104,12 @@ namespace verbly { | |||
104 | 104 | ||
105 | void word::initializeForm(inflection infl) const | 105 | void word::initializeForm(inflection infl) const |
106 | { | 106 | { |
107 | forms_[infl] = db_.forms(form::words(infl) %= *this, verbly::form::id, -1).all(); | 107 | if (!db_) |
108 | { | ||
109 | throw std::domain_error("Database not present"); | ||
110 | } | ||
111 | |||
112 | forms_[infl] = db_->forms(form::words(infl) %= *this, verbly::form::id, -1).all(); | ||
108 | } | 113 | } |
109 | 114 | ||
110 | filter word::synonyms_field::operator%=(filter joinCondition) const | 115 | filter word::synonyms_field::operator%=(filter joinCondition) const |