A minimal power only for natural numbers exponents of ten, for portability.
Found the idea in Tcl/Tk but wrote it myself after weeks and it turned out
being a different implementation, reverse direction, constexpr, etc.
* reimplement ByteStr as byte_str_t based on hb_ubytes_t
Unuse start_embed<ByteStr>
Also renamed SubByteStr to byte_str_ref_t
More renaming to come
* substr renamed to str_ref in line with its type byte_str_ref_t
* uncamelize non-table struct names
* uncamelized non-struct types OpCode etc
* add byte_str_t copy ctor
* test
* test2
* undo tests
* fix bot failure
* undo the previous change
* fixed tabs, added inline
* Revert "fixed tabs, added inline"
This reverts commit 21163c30e9.
* fix tabs
* src/hb-cff-interp-dict-common.hh: Use ull for unsigned int64_t
The llu suffix does not work for older Visual Studio versions
(pre-2013), but ull works for all the compilers that we attempt to
support.
* test/api: Fix build on pre-C99 compilers
Ensure variables are declared at the top of the block.
* src/hb-dsalgs.hh: Add specialization for hb_is_signed<> for __int8
Pre-Visual Studio 2010 does not consider __int8 (which is typedef'ed to
int8_t) to be equivilant to signed char, so the compiler cannot find the
corresponding hb_is_signed<> specialization that is needed.
The interesting thing is unsigned __int8 is considered to be equivilant
to unsigned char, so as the other types (short, int, long) that we look
for here, so only the specialization for __int8 is added here.
This will fix builds on Visual Studio 2008 at least.