diff options
| author | Kelly Rauchenberger <fefferburbia@gmail.com> | 2016-03-24 23:16:07 -0400 |
|---|---|---|
| committer | Kelly Rauchenberger <fefferburbia@gmail.com> | 2016-03-24 23:16:07 -0400 |
| commit | eef5de613c75661e5d94baa086f6f2ddc26c7ed0 (patch) | |
| tree | 180230f6a245c5bca94d894273f5d2b93ded3f04 /lib/word.cpp | |
| parent | d5ee4e39e5b5b3b8daa85cd972802195ad35e965 (diff) | |
| download | verbly-eef5de613c75661e5d94baa086f6f2ddc26c7ed0.tar.gz verbly-eef5de613c75661e5d94baa086f6f2ddc26c7ed0.tar.bz2 verbly-eef5de613c75661e5d94baa086f6f2ddc26c7ed0.zip | |
Added verb frames
In addition: - Added prepositions. - Rewrote a lot of the query interface. It now, for a lot of relationships, supports nested AND, OR, and NOT logic. - Rewrote the token class. It is now a union-like class instead of being polymorphic, which means smart pointers are no longer necessary. - Querying with regards to word derivation has been temporarily removed. - Sentinel values are now supported for all word types. - The VerbNet data retrieved from http://verbs.colorado.edu/~mpalmer/projects/verbnet/downloads.html was found to not be perfectly satisfactory in some regards, especially regarding adjective phrases. A patch file is now included in the repository describing the changes made to the VerbNet v3.2 download for the canonical verbly datafile.
Diffstat (limited to 'lib/word.cpp')
| -rw-r--r-- | lib/word.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
| diff --git a/lib/word.cpp b/lib/word.cpp index 15af150..13c611f 100644 --- a/lib/word.cpp +++ b/lib/word.cpp | |||
| @@ -3,13 +3,20 @@ | |||
| 3 | 3 | ||
| 4 | namespace verbly { | 4 | namespace verbly { |
| 5 | 5 | ||
| 6 | word::word(const data& _data, int _id) : _data(_data), _id(_id) | 6 | word::word() |
| 7 | { | ||
| 8 | |||
| 9 | } | ||
| 10 | |||
| 11 | word::word(const data& _data, int _id) : _data(&_data), _id(_id), _valid(true) | ||
| 7 | { | 12 | { |
| 8 | 13 | ||
| 9 | } | 14 | } |
| 10 | 15 | ||
| 11 | std::list<std::string> word::rhyme_phonemes() const | 16 | std::list<std::string> word::rhyme_phonemes() const |
| 12 | { | 17 | { |
| 18 | assert(_valid == true); | ||
| 19 | |||
| 13 | std::list<std::string> result; | 20 | std::list<std::string> result; |
| 14 | 21 | ||
| 15 | for (auto pronunciation : pronunciations) | 22 | for (auto pronunciation : pronunciations) |
| @@ -32,6 +39,8 @@ namespace verbly { | |||
| 32 | 39 | ||
| 33 | bool word::starts_with_vowel_sound() const | 40 | bool word::starts_with_vowel_sound() const |
| 34 | { | 41 | { |
| 42 | assert(_valid == true); | ||
| 43 | |||
| 35 | if (pronunciations.size() > 0) | 44 | if (pronunciations.size() > 0) |
| 36 | { | 45 | { |
| 37 | return std::any_of(std::begin(pronunciations), std::end(pronunciations), [] (std::list<std::string> phonemes) { | 46 | return std::any_of(std::begin(pronunciations), std::end(pronunciations), [] (std::list<std::string> phonemes) { |
