TEST(fv_converter, key_matcher) { ASSERT_TRUE(exact_match("hoge").match("hoge")); ASSERT_FALSE(exact_match("hoge").match("foo")); ASSERT_TRUE(prefix_match("ho").match("hoge")); ASSERT_TRUE(prefix_match("hoge").match("hoge")); ASSERT_TRUE(prefix_match("").match("hoge")); ASSERT_FALSE(prefix_match("hogehgoe").match("hoge")); ASSERT_TRUE(suffix_match("ge").match("hoge")); ASSERT_TRUE(suffix_match("hoge").match("hoge")); ASSERT_TRUE(suffix_match("").match("hoge")); ASSERT_FALSE(suffix_match("hogehgoe").match("hoge")); }
char *hyphenizer(char *word) { char **p; for (p = rules[word[strlen(word)-1]-'a']; *p; p++) if (suffix_match(word, *p)) return *p; return NULL; }