Flutter Engine
The Flutter Engine
|
Classes | |
struct | CanonicalizationRange |
struct | Ecma262Canonicalize |
struct | Ecma262UnCanonicalize |
struct | Letter |
class | Mapping |
struct | MultiCharacterSpecialCase |
Functions | |
template<intptr_t D> | |
static int32_t | TableGet (const int32_t *table, intptr_t index) |
static int32_t | GetEntry (int32_t entry) |
static bool | IsStart (int32_t entry) |
static bool | LookupPredicate (const int32_t *table, uint16_t size, int32_t chr) |
template<bool ranges_are_linear, intptr_t kW> | |
static intptr_t | LookupMapping (const int32_t *table, uint16_t size, const MultiCharacterSpecialCase< kW > *multi_chars, int32_t chr, int32_t next, int32_t *result, bool *allow_caching_ptr) |
Variables | |
static constexpr intptr_t | kStartBit = (1 << 30) |
static constexpr intptr_t | kChunkBits = (1 << 13) |
static constexpr int32_t | kSentinel = static_cast<int32_t>(-1) |
static constexpr uint16_t | kLetterTable0Size = 431 |
static constexpr int32_t | kLetterTable0 [431] |
static constexpr uint16_t | kLetterTable1Size = 87 |
static constexpr int32_t | kLetterTable1 [87] |
static constexpr uint16_t | kLetterTable2Size = 4 |
static constexpr int32_t | kLetterTable2 [4] |
static constexpr uint16_t | kLetterTable3Size = 2 |
static constexpr int32_t | kLetterTable3 [2] |
static constexpr uint16_t | kLetterTable4Size = 2 |
static constexpr int32_t | kLetterTable4 [2] |
static constexpr uint16_t | kLetterTable5Size = 100 |
static constexpr int32_t | kLetterTable5 [100] |
static constexpr uint16_t | kLetterTable6Size = 6 |
static constexpr int32_t | kLetterTable6 [6] |
static constexpr uint16_t | kLetterTable7Size = 48 |
static constexpr int32_t | kLetterTable7 [48] |
static const MultiCharacterSpecialCase< 1 > | kEcma262CanonicalizeMultiStrings0 [1] |
static constexpr uint16_t | kEcma262CanonicalizeTable0Size = 498 |
static constexpr int32_t | kEcma262CanonicalizeTable0 [996] |
static const MultiCharacterSpecialCase< 1 > | kEcma262CanonicalizeMultiStrings1 [1] |
static constexpr uint16_t | kEcma262CanonicalizeTable1Size = 73 |
static constexpr int32_t | kEcma262CanonicalizeTable1 [146] |
static const MultiCharacterSpecialCase< 1 > | kEcma262CanonicalizeMultiStrings5 [1] |
static constexpr uint16_t | kEcma262CanonicalizeTable5Size = 95 |
static constexpr int32_t | kEcma262CanonicalizeTable5 [190] |
static const MultiCharacterSpecialCase< 1 > | kEcma262CanonicalizeMultiStrings7 [1] |
static constexpr uint16_t | kEcma262CanonicalizeTable7Size = 2 |
static constexpr int32_t | kEcma262CanonicalizeTable7 [4] |
static const MultiCharacterSpecialCase< 4 > | kEcma262UnCanonicalizeMultiStrings0 [507] |
static constexpr uint16_t | kEcma262UnCanonicalizeTable0Size = 1005 |
static constexpr int32_t | kEcma262UnCanonicalizeTable0 [2010] |
static const MultiCharacterSpecialCase< 2 > | kEcma262UnCanonicalizeMultiStrings1 [83] |
static constexpr uint16_t | kEcma262UnCanonicalizeTable1Size = 149 |
static constexpr int32_t | kEcma262UnCanonicalizeTable1 [298] |
static const MultiCharacterSpecialCase< 2 > | kEcma262UnCanonicalizeMultiStrings5 [104] |
static constexpr uint16_t | kEcma262UnCanonicalizeTable5Size = 198 |
static constexpr int32_t | kEcma262UnCanonicalizeTable5 [396] |
static const MultiCharacterSpecialCase< 2 > | kEcma262UnCanonicalizeMultiStrings7 [3] |
static constexpr uint16_t | kEcma262UnCanonicalizeTable7Size = 4 |
static constexpr int32_t | kEcma262UnCanonicalizeTable7 [8] |
static const MultiCharacterSpecialCase< 1 > | kCanonicalizationRangeMultiStrings0 [1] |
static constexpr uint16_t | kCanonicalizationRangeTable0Size = 70 |
static constexpr int32_t | kCanonicalizationRangeTable0 [140] |
static const MultiCharacterSpecialCase< 1 > | kCanonicalizationRangeMultiStrings1 [1] |
static constexpr uint16_t | kCanonicalizationRangeTable1Size = 14 |
static constexpr int32_t | kCanonicalizationRangeTable1 [28] |
static const MultiCharacterSpecialCase< 1 > | kCanonicalizationRangeMultiStrings7 [1] |
static constexpr uint16_t | kCanonicalizationRangeTable7Size = 4 |
static constexpr int32_t | kCanonicalizationRangeTable7 [8] |
|
inlinestatic |
Definition at line 30 of file unibrow.cc.
|
inlinestatic |
Definition at line 34 of file unibrow.cc.
|
static |
Definition at line 96 of file unibrow.cc.
|
static |
Look up a character in the unicode table using a mix of binary and interpolation search. For a uniformly distributed array interpolation search beats binary search by a wide margin. However, in this case interpolation search degenerates because of some very high values in the lower end of the table so this function uses a combination. The average number of steps to look up the information about a character is around 10, slightly higher if there is no information available about the character.
Definition at line 48 of file unibrow.cc.
|
inlinestatic |
Definition at line 26 of file unibrow.cc.
|
static |
Definition at line 1797 of file unibrow.cc.
|
static |
Definition at line 1810 of file unibrow.cc.
|
static |
Definition at line 1816 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1800 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1799 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1813 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1812 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1819 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1818 of file unibrow.cc.
|
staticconstexpr |
Definition at line 16 of file unibrow.cc.
|
static |
Definition at line 389 of file unibrow.cc.
|
static |
Definition at line 580 of file unibrow.cc.
|
static |
Definition at line 594 of file unibrow.cc.
|
static |
Definition at line 622 of file unibrow.cc.
|
staticconstexpr |
Definition at line 392 of file unibrow.cc.
|
staticconstexpr |
Definition at line 391 of file unibrow.cc.
|
staticconstexpr |
Definition at line 583 of file unibrow.cc.
|
staticconstexpr |
Definition at line 582 of file unibrow.cc.
|
staticconstexpr |
Definition at line 597 of file unibrow.cc.
|
staticconstexpr |
Definition at line 596 of file unibrow.cc.
|
staticconstexpr |
Definition at line 625 of file unibrow.cc.
|
staticconstexpr |
Definition at line 624 of file unibrow.cc.
|
static |
Definition at line 666 of file unibrow.cc.
|
static |
Definition at line 1553 of file unibrow.cc.
|
static |
Definition at line 1597 of file unibrow.cc.
|
static |
Definition at line 1754 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1175 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1174 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1576 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1575 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1703 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1702 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1757 of file unibrow.cc.
|
staticconstexpr |
Definition at line 1756 of file unibrow.cc.
|
staticconstexpr |
Definition at line 188 of file unibrow.cc.
|
staticconstexpr |
Definition at line 187 of file unibrow.cc.
|
staticconstexpr |
Definition at line 298 of file unibrow.cc.
|
staticconstexpr |
Definition at line 297 of file unibrow.cc.
|
staticconstexpr |
Definition at line 311 of file unibrow.cc.
|
staticconstexpr |
Definition at line 310 of file unibrow.cc.
|
staticconstexpr |
Definition at line 314 of file unibrow.cc.
|
staticconstexpr |
Definition at line 313 of file unibrow.cc.
|
staticconstexpr |
Definition at line 317 of file unibrow.cc.
|
staticconstexpr |
Definition at line 316 of file unibrow.cc.
|
staticconstexpr |
Definition at line 320 of file unibrow.cc.
|
staticconstexpr |
Definition at line 319 of file unibrow.cc.
|
staticconstexpr |
Definition at line 347 of file unibrow.cc.
|
staticconstexpr |
Definition at line 346 of file unibrow.cc.
|
staticconstexpr |
Definition at line 350 of file unibrow.cc.
|
staticconstexpr |
Definition at line 349 of file unibrow.cc.
|
staticconstexpr |
Definition at line 17 of file unibrow.cc.
|
staticconstexpr |
Definition at line 15 of file unibrow.cc.