X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fkeyword.cc;h=b5f7947ada203e31550ee041a557f37f439b115c;hb=e8f8a3a70ca7c132db9f51e55faa6355fcb7ccd4;hp=684bc189e36a4f08768321b8549a763e3d56fafe;hpb=4ecdbd7d70ca7441be4dddd15ac01cc255bc2a35;p=lilypond.git diff --git a/lily/keyword.cc b/lily/keyword.cc index 684bc189e3..b5f7947ada 100644 --- a/lily/keyword.cc +++ b/lily/keyword.cc @@ -9,27 +9,26 @@ using namespace std; /* for qsort */ -int tabcmp (Keyword_ent const &p1, Keyword_ent const &p2) +bool tab_less (Keyword_ent const &p1, Keyword_ent const &p2) { - return strcmp (p1.name_, p2.name_); + return strcmp (p1.name_, p2.name_) < 0; } Keyword_table::Keyword_table (Keyword_ent *tab) { while (tab->name_) - table_.push (*tab++); + table_.push_back (*tab++); - table_.sort (tabcmp); + vector_sort (table_, tab_less); } -int +vsize Keyword_table::lookup (char const *s) const { Keyword_ent e; e.name_ = s; - int idx = binary_search (table_, e, tabcmp); - if (idx >= 0) + vsize idx = binary_search (table_, e, tab_less); + if (idx != VPOS) return table_[idx].tokcode_; - else - return -1; + return VPOS; }