Declare CharProps just once

This commit is contained in:
Kovid Goyal
2025-03-25 14:08:47 +05:30
parent d429f732e1
commit aad58cf703
4 changed files with 139 additions and 125 deletions

View File

@@ -9,22 +9,24 @@
#include "data-types.h"
// CharPropsDeclaration
typedef union CharProps {
struct {
uint8_t shifted_width : 3;
uint8_t is_extended_pictographic : 1;
uint8_t grapheme_break : 4;
uint8_t indic_conjunct_break : 2;
uint8_t is_extended_pictographic: 1;
uint8_t is_invalid: 1;
uint8_t shifted_width : 3;
uint8_t is_non_rendered : 1;
uint8_t is_emoji_presentation_base : 1;
uint8_t is_emoji : 1;
uint8_t is_emoji_presentation_base : 1;
uint8_t is_invalid : 1;
uint8_t is_non_rendered : 1;
uint8_t is_symbol : 1;
uint8_t is_combining_char : 1;
};
uint16_t val;
} CharProps;
static_assert(sizeof(CharProps) == sizeof(uint16_t), "Fix the ordering of CharProps");
// EndCharPropsDeclaration
typedef struct GraphemeSegmentationState {
int last_char_prop;