flip order of len and ptr in oc_str8/16/32 structs, to make bindings easier
This commit is contained in:
parent
afbb4329f5
commit
8d346eca90
|
@ -636,8 +636,8 @@ oc_str32 oc_font_get_glyph_indices_from_font_data(oc_font_data* fontData, oc_str
|
||||||
u32 oc_font_get_glyph_index_from_font_data(oc_font_data* fontData, oc_utf32 codePoint)
|
u32 oc_font_get_glyph_index_from_font_data(oc_font_data* fontData, oc_utf32 codePoint)
|
||||||
{
|
{
|
||||||
u32 glyphIndex = 0;
|
u32 glyphIndex = 0;
|
||||||
oc_str32 codePoints = { 1, &codePoint };
|
oc_str32 codePoints = { .ptr = &codePoint, .len = 1 };
|
||||||
oc_str32 backing = { 1, &glyphIndex };
|
oc_str32 backing = { .ptr = &glyphIndex, 1 };
|
||||||
oc_font_get_glyph_indices_from_font_data(fontData, codePoints, backing);
|
oc_font_get_glyph_indices_from_font_data(fontData, codePoints, backing);
|
||||||
return (glyphIndex);
|
return (glyphIndex);
|
||||||
}
|
}
|
||||||
|
@ -655,15 +655,15 @@ oc_str32 oc_font_get_glyph_indices(oc_font font, oc_str32 codePoints, oc_str32 b
|
||||||
oc_str32 oc_font_push_glyph_indices(oc_font font, oc_arena* arena, oc_str32 codePoints)
|
oc_str32 oc_font_push_glyph_indices(oc_font font, oc_arena* arena, oc_str32 codePoints)
|
||||||
{
|
{
|
||||||
u32* buffer = oc_arena_push_array(arena, u32, codePoints.len);
|
u32* buffer = oc_arena_push_array(arena, u32, codePoints.len);
|
||||||
oc_str32 backing = { codePoints.len, buffer };
|
oc_str32 backing = { .ptr = buffer, .len = codePoints.len };
|
||||||
return (oc_font_get_glyph_indices(font, codePoints, backing));
|
return (oc_font_get_glyph_indices(font, codePoints, backing));
|
||||||
}
|
}
|
||||||
|
|
||||||
u32 oc_font_get_glyph_index(oc_font font, oc_utf32 codePoint)
|
u32 oc_font_get_glyph_index(oc_font font, oc_utf32 codePoint)
|
||||||
{
|
{
|
||||||
u32 glyphIndex = 0;
|
u32 glyphIndex = 0;
|
||||||
oc_str32 codePoints = { 1, &codePoint };
|
oc_str32 codePoints = { .ptr = &codePoint, .len = 1 };
|
||||||
oc_str32 backing = { 1, &glyphIndex };
|
oc_str32 backing = { .ptr = &glyphIndex, .len = 1 };
|
||||||
oc_font_get_glyph_indices(font, codePoints, backing);
|
oc_font_get_glyph_indices(font, codePoints, backing);
|
||||||
return (glyphIndex);
|
return (glyphIndex);
|
||||||
}
|
}
|
||||||
|
@ -783,7 +783,7 @@ oc_text_metrics oc_font_text_metrics_utf32(oc_font font, f32 fontSize, oc_str32
|
||||||
|
|
||||||
if(missingGlyphIndex)
|
if(missingGlyphIndex)
|
||||||
{
|
{
|
||||||
oc_font_get_glyph_metrics_from_font_data(fontData, (oc_str32){ 1, &missingGlyphIndex }, &missingGlyphMetrics);
|
oc_font_get_glyph_metrics_from_font_data(fontData, (oc_str32){ .ptr = &missingGlyphIndex, .len = 1 }, &missingGlyphMetrics);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -793,7 +793,7 @@ oc_text_metrics oc_font_text_metrics_utf32(oc_font font, f32 fontSize, oc_str32
|
||||||
missingGlyphIndex = oc_font_get_glyph_index_from_font_data(fontData, 'X');
|
missingGlyphIndex = oc_font_get_glyph_index_from_font_data(fontData, 'X');
|
||||||
if(missingGlyphIndex)
|
if(missingGlyphIndex)
|
||||||
{
|
{
|
||||||
oc_font_get_glyph_metrics_from_font_data(fontData, (oc_str32){ 1, &missingGlyphIndex }, &missingGlyphMetrics);
|
oc_font_get_glyph_metrics_from_font_data(fontData, (oc_str32){ .ptr = &missingGlyphIndex, .len = 1 }, &missingGlyphMetrics);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -72,8 +72,8 @@ void oc_wasm_list_push_back(oc_wasm_list* list, oc_wasm_list_elt* elt);
|
||||||
|
|
||||||
typedef struct oc_wasm_str8
|
typedef struct oc_wasm_str8
|
||||||
{
|
{
|
||||||
u64 len;
|
|
||||||
u32 ptr;
|
u32 ptr;
|
||||||
|
u64 len;
|
||||||
} oc_wasm_str8;
|
} oc_wasm_str8;
|
||||||
|
|
||||||
typedef struct oc_wasm_str8_elt
|
typedef struct oc_wasm_str8_elt
|
||||||
|
|
|
@ -34,8 +34,8 @@ extern "C" {
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
typedef struct oc_str8
|
typedef struct oc_str8
|
||||||
{
|
{
|
||||||
u64 len;
|
|
||||||
char* ptr;
|
char* ptr;
|
||||||
|
u64 len;
|
||||||
} oc_str8;
|
} oc_str8;
|
||||||
|
|
||||||
#define OC_STR8(s) ((oc_str8){ .len = (s) ? strlen(s) : 0, .ptr = (char*)s })
|
#define OC_STR8(s) ((oc_str8){ .len = (s) ? strlen(s) : 0, .ptr = (char*)s })
|
||||||
|
@ -43,7 +43,7 @@ typedef struct oc_str8
|
||||||
//NOTE: this only works with string literals, but is sometimes necessary to generate compile-time constants
|
//NOTE: this only works with string literals, but is sometimes necessary to generate compile-time constants
|
||||||
#define OC_STR8_LIT(s) \
|
#define OC_STR8_LIT(s) \
|
||||||
{ \
|
{ \
|
||||||
sizeof(s) - 1, s \
|
s, sizeof(s) - 1 \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define oc_str8_lp(s) ((s).len), ((s).ptr)
|
#define oc_str8_lp(s) ((s).len), ((s).ptr)
|
||||||
|
@ -92,8 +92,8 @@ ORCA_API oc_str8_list oc_str8_split(oc_arena* arena, oc_str8 str, oc_str8_list s
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
typedef struct oc_str16
|
typedef struct oc_str16
|
||||||
{
|
{
|
||||||
u64 len;
|
|
||||||
u16* ptr;
|
u16* ptr;
|
||||||
|
u64 len;
|
||||||
} oc_str16;
|
} oc_str16;
|
||||||
|
|
||||||
ORCA_API oc_str16 oc_str16_from_buffer(u64 len, u16* buffer);
|
ORCA_API oc_str16 oc_str16_from_buffer(u64 len, u16* buffer);
|
||||||
|
@ -125,8 +125,8 @@ ORCA_API oc_str16_list oc_str16_split(oc_arena* arena, oc_str16 str, oc_str16_li
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
typedef struct oc_str32
|
typedef struct oc_str32
|
||||||
{
|
{
|
||||||
u64 len;
|
|
||||||
u32* ptr;
|
u32* ptr;
|
||||||
|
u64 len;
|
||||||
} oc_str32;
|
} oc_str32;
|
||||||
|
|
||||||
ORCA_API oc_str32 oc_str32_from_buffer(u64 len, u32* buffer);
|
ORCA_API oc_str32 oc_str32_from_buffer(u64 len, u32* buffer);
|
||||||
|
|
Loading…
Reference in New Issue