Include notionflux in the main repo instead of its own submodule
[notion/jeffpc.git] / de / unicode / precompose.c.tail
blobb6e629236a536ba704b6447a76cb3a249f92e703
1 };
3 int do_precomposition(int base, int comb) {
4   int min = 0;
5   int max = sizeof(precompositions) / sizeof(precompositions[0]) - 1;
6   int mid;
7   int sought = (base << 16) | comb, that;
9   /* binary search */
10   while (max >= min) {
11     mid = (min + max) / 2;
12     that = (precompositions[mid].base << 16) | (precompositions[mid].comb);
13     if (that < sought) {
14       min = mid + 1;
15     } else if (that > sought) {
16       max = mid - 1;
17     } else {
18       return precompositions[mid].replacement;
19     }
20   }
21   /* no match */
22   return -1;