1 #include <stdarg.h> 2 #include <stdbool.h> 3 #include <stdint.h> 4 #include <stdlib.h> 5 6 /** 7 * Constants shared by multiple CSS Box Alignment properties 8 * 9 * These constants match Gecko's `NS_STYLE_ALIGN_*` constants. 10 */ 11 typedef struct AlignFlags { 12 uint8_t bits; 13 } AlignFlags; 14 #define AlignFlags_AUTO (AlignFlags){ .bits = 0 } 15 #define AlignFlags_NORMAL (AlignFlags){ .bits = 1 } 16 #define AlignFlags_START (AlignFlags){ .bits = 1 << 1 } 17 #define AlignFlags_END (AlignFlags){ .bits = 1 << 2 } 18 #define AlignFlags_FLEX_START (AlignFlags){ .bits = 1 << 3 } 19 20 #ifdef __cplusplus 21 extern "C" { 22 #endif // __cplusplus 23 24 void root(AlignFlags flags); 25 26 #ifdef __cplusplus 27 } // extern "C" 28 #endif // __cplusplus 29