mirror of
https://github.com/odin-lang/Odin.git
synced 2026-02-15 23:54:07 +00:00
distinct, const format, proper cstring parameters
This commit is contained in:
@@ -2,7 +2,7 @@ package orca
|
||||
|
||||
import "core:c"
|
||||
|
||||
window :: u64
|
||||
window :: distinct u64
|
||||
|
||||
mouse_cursor :: enum c.int {
|
||||
ARROW,
|
||||
|
||||
@@ -3,14 +3,14 @@ package orca
|
||||
import "core:c"
|
||||
|
||||
// types
|
||||
color :: [4]f32
|
||||
utf32 :: u32
|
||||
color :: distinct [4]f32
|
||||
utf32 :: rune
|
||||
|
||||
// handles
|
||||
surface :: u64
|
||||
font :: u64
|
||||
image :: u64
|
||||
canvas :: u64
|
||||
surface :: distinct u64
|
||||
font :: distinct u64
|
||||
image :: distinct u64
|
||||
canvas :: distinct u64
|
||||
|
||||
joint_type :: enum c.int {
|
||||
MITER,
|
||||
|
||||
@@ -5,127 +5,127 @@ unicode_range :: struct {
|
||||
count: u32,
|
||||
}
|
||||
|
||||
UNICODE_BASIC_LATIN:: unicode_range { 0x0000, 127 }
|
||||
UNICODE_C1_CONTROLS_AND_LATIN_1_SUPPLEMENT:: unicode_range { 0x0080, 127 }
|
||||
UNICODE_LATIN_EXTENDED_A:: unicode_range { 0x0100, 127 }
|
||||
UNICODE_LATIN_EXTENDED_B:: unicode_range { 0x0180, 207 }
|
||||
UNICODE_IPA_EXTENSIONS:: unicode_range { 0x0250, 95 }
|
||||
UNICODE_SPACING_MODIFIER_LETTERS:: unicode_range { 0x02b0, 79 }
|
||||
UNICODE_COMBINING_DIACRITICAL_MARKS:: unicode_range { 0x0300, 111 }
|
||||
UNICODE_GREEK_COPTIC:: unicode_range { 0x0370, 143 }
|
||||
UNICODE_CYRILLIC:: unicode_range { 0x0400, 255 }
|
||||
UNICODE_CYRILLIC_SUPPLEMENT:: unicode_range { 0x0500, 47 }
|
||||
UNICODE_ARMENIAN:: unicode_range { 0x0530, 95 }
|
||||
UNICODE_HEBREW:: unicode_range { 0x0590, 111 }
|
||||
UNICODE_ARABIC:: unicode_range { 0x0600, 255 }
|
||||
UNICODE_SYRIAC:: unicode_range { 0x0700, 79 }
|
||||
UNICODE_THAANA:: unicode_range { 0x0780, 63 }
|
||||
UNICODE_DEVANAGARI:: unicode_range { 0x0900, 127 }
|
||||
UNICODE_BENGALI_ASSAMESE:: unicode_range { 0x0980, 127 }
|
||||
UNICODE_GURMUKHI:: unicode_range { 0x0a00, 127 }
|
||||
UNICODE_GUJARATI:: unicode_range { 0x0a80, 127 }
|
||||
UNICODE_ORIYA:: unicode_range { 0x0b00, 127 }
|
||||
UNICODE_TAMIL:: unicode_range { 0x0b80, 127 }
|
||||
UNICODE_TELUGU:: unicode_range { 0x0c00, 127 }
|
||||
UNICODE_KANNADA:: unicode_range { 0x0c80, 127 }
|
||||
UNICODE_MALAYALAM:: unicode_range { 0x0d00, 255 }
|
||||
UNICODE_SINHALA:: unicode_range { 0x0d80, 127 }
|
||||
UNICODE_THAI:: unicode_range { 0x0e00, 127 }
|
||||
UNICODE_LAO:: unicode_range { 0x0e80, 127 }
|
||||
UNICODE_TIBETAN:: unicode_range { 0x0f00, 255 }
|
||||
UNICODE_MYANMAR:: unicode_range { 0x1000, 159 }
|
||||
UNICODE_GEORGIAN:: unicode_range { 0x10a0, 95 }
|
||||
UNICODE_HANGUL_JAMO:: unicode_range { 0x1100, 255 }
|
||||
UNICODE_ETHIOPIC:: unicode_range { 0x1200, 383 }
|
||||
UNICODE_CHEROKEE:: unicode_range { 0x13a0, 95 }
|
||||
UNICODE_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS:: unicode_range { 0x1400, 639 }
|
||||
UNICODE_OGHAM:: unicode_range { 0x1680, 31 }
|
||||
UNICODE_RUNIC:: unicode_range { 0x16a0, 95 }
|
||||
UNICODE_TAGALOG:: unicode_range { 0x1700, 31 }
|
||||
UNICODE_HANUNOO:: unicode_range { 0x1720, 31 }
|
||||
UNICODE_BUHID:: unicode_range { 0x1740, 31 }
|
||||
UNICODE_TAGBANWA:: unicode_range { 0x1760, 31 }
|
||||
UNICODE_KHMER:: unicode_range { 0x1780, 127 }
|
||||
UNICODE_MONGOLIAN:: unicode_range { 0x1800, 175 }
|
||||
UNICODE_LIMBU:: unicode_range { 0x1900, 79 }
|
||||
UNICODE_TAI_LE:: unicode_range { 0x1950, 47 }
|
||||
UNICODE_KHMER_SYMBOLS:: unicode_range { 0x19e0, 31 }
|
||||
UNICODE_PHONETIC_EXTENSIONS:: unicode_range { 0x1d00, 127 }
|
||||
UNICODE_LATIN_EXTENDED_ADDITIONAL:: unicode_range { 0x1e00, 255 }
|
||||
UNICODE_GREEK_EXTENDED:: unicode_range { 0x1f00, 255 }
|
||||
UNICODE_GENERAL_PUNCTUATION:: unicode_range { 0x2000, 111 }
|
||||
UNICODE_SUPERSCRIPTS_AND_SUBSCRIPTS:: unicode_range { 0x2070, 47 }
|
||||
UNICODE_CURRENCY_SYMBOLS:: unicode_range { 0x20a0, 47 }
|
||||
UNICODE_COMBINING_DIACRITICAL_MARKS_FOR_SYMBOLS:: unicode_range { 0x20d0, 47 }
|
||||
UNICODE_LETTERLIKE_SYMBOLS:: unicode_range { 0x2100, 79 }
|
||||
UNICODE_NUMBER_FORMS:: unicode_range { 0x2150, 63 }
|
||||
UNICODE_ARROWS:: unicode_range { 0x2190, 111 }
|
||||
UNICODE_MATHEMATICAL_OPERATORS:: unicode_range { 0x2200, 255 }
|
||||
UNICODE_MISCELLANEOUS_TECHNICAL:: unicode_range { 0x2300, 255 }
|
||||
UNICODE_CONTROL_PICTURES:: unicode_range { 0x2400, 63 }
|
||||
UNICODE_OPTICAL_CHARACTER_RECOGNITION:: unicode_range { 0x2440, 31 }
|
||||
UNICODE_ENCLOSED_ALPHANUMERICS:: unicode_range { 0x2460, 159 }
|
||||
UNICODE_BOX_DRAWING:: unicode_range { 0x2500, 127 }
|
||||
UNICODE_BLOCK_ELEMENTS:: unicode_range { 0x2580, 31 }
|
||||
UNICODE_GEOMETRIC_SHAPES:: unicode_range { 0x25a0, 95 }
|
||||
UNICODE_MISCELLANEOUS_SYMBOLS:: unicode_range { 0x2600, 255 }
|
||||
UNICODE_DINGBATS:: unicode_range { 0x2700, 191 }
|
||||
UNICODE_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_A:: unicode_range { 0x27c0, 47 }
|
||||
UNICODE_SUPPLEMENTAL_ARROWS_A:: unicode_range { 0x27f0, 15 }
|
||||
UNICODE_BRAILLE_PATTERNS:: unicode_range { 0x2800, 255 }
|
||||
UNICODE_SUPPLEMENTAL_ARROWS_B:: unicode_range { 0x2900, 127 }
|
||||
UNICODE_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B:: unicode_range { 0x2980, 127 }
|
||||
UNICODE_SUPPLEMENTAL_MATHEMATICAL_OPERATORS:: unicode_range { 0x2a00, 255 }
|
||||
UNICODE_MISCELLANEOUS_SYMBOLS_AND_ARROWS:: unicode_range { 0x2b00, 255 }
|
||||
UNICODE_CJK_RADICALS_SUPPLEMENT:: unicode_range { 0x2e80, 127 }
|
||||
UNICODE_KANGXI_RADICALS:: unicode_range { 0x2f00, 223 }
|
||||
UNICODE_IDEOGRAPHIC_DESCRIPTION_CHARACTERS:: unicode_range { 0x2ff0, 15 }
|
||||
UNICODE_CJK_SYMBOLS_AND_PUNCTUATION:: unicode_range { 0x3000, 63 }
|
||||
UNICODE_HIRAGANA:: unicode_range { 0x3040, 95 }
|
||||
UNICODE_KATAKANA:: unicode_range { 0x30a0, 95 }
|
||||
UNICODE_BOPOMOFO:: unicode_range { 0x3100, 47 }
|
||||
UNICODE_HANGUL_COMPATIBILITY_JAMO:: unicode_range { 0x3130, 95 }
|
||||
UNICODE_KANBUN_KUNTEN:: unicode_range { 0x3190, 15 }
|
||||
UNICODE_BOPOMOFO_EXTENDED:: unicode_range { 0x31a0, 31 }
|
||||
UNICODE_KATAKANA_PHONETIC_EXTENSIONS:: unicode_range { 0x31f0, 15 }
|
||||
UNICODE_ENCLOSED_CJK_LETTERS_AND_MONTHS:: unicode_range { 0x3200, 255 }
|
||||
UNICODE_CJK_COMPATIBILITY:: unicode_range { 0x3300, 255 }
|
||||
UNICODE_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A:: unicode_range { 0x3400, 6591 }
|
||||
UNICODE_YIJING_HEXAGRAM_SYMBOLS:: unicode_range { 0x4dc0, 63 }
|
||||
UNICODE_CJK_UNIFIED_IDEOGRAPHS:: unicode_range { 0x4e00, 20911 }
|
||||
UNICODE_YI_SYLLABLES:: unicode_range { 0xa000, 1167 }
|
||||
UNICODE_YI_RADICALS:: unicode_range { 0xa490, 63 }
|
||||
UNICODE_HANGUL_SYLLABLES:: unicode_range { 0xac00, 11183 }
|
||||
UNICODE_HIGH_SURROGATE_AREA:: unicode_range { 0xd800, 1023 }
|
||||
UNICODE_LOW_SURROGATE_AREA:: unicode_range { 0xdc00, 1023 }
|
||||
UNICODE_PRIVATE_USE_AREA:: unicode_range { 0xe000, 6399 }
|
||||
UNICODE_CJK_COMPATIBILITY_IDEOGRAPHS:: unicode_range { 0xf900, 511 }
|
||||
UNICODE_ALPHABETIC_PRESENTATION_FORMS:: unicode_range { 0xfb00, 79 }
|
||||
UNICODE_ARABIC_PRESENTATION_FORMS_A:: unicode_range { 0xfb50, 687 }
|
||||
UNICODE_VARIATION_SELECTORS:: unicode_range { 0xfe00, 15 }
|
||||
UNICODE_COMBINING_HALF_MARKS:: unicode_range { 0xfe20, 15 }
|
||||
UNICODE_CJK_COMPATIBILITY_FORMS:: unicode_range { 0xfe30, 31 }
|
||||
UNICODE_SMALL_FORM_VARIANTS:: unicode_range { 0xfe50, 31 }
|
||||
UNICODE_ARABIC_PRESENTATION_FORMS_B:: unicode_range { 0xfe70, 143 }
|
||||
UNICODE_HALFWIDTH_AND_FULLWIDTH_FORMS:: unicode_range { 0xff00, 239 }
|
||||
UNICODE_SPECIALS:: unicode_range { 0xfff0, 15 }
|
||||
UNICODE_LINEAR_B_SYLLABARY:: unicode_range { 0x10000, 127 }
|
||||
UNICODE_LINEAR_B_IDEOGRAMS:: unicode_range { 0x10080, 127 }
|
||||
UNICODE_AEGEAN_NUMBERS:: unicode_range { 0x10100, 63 }
|
||||
UNICODE_OLD_ITALIC:: unicode_range { 0x10300, 47 }
|
||||
UNICODE_GOTHIC:: unicode_range { 0x10330, 31 }
|
||||
UNICODE_UGARITIC:: unicode_range { 0x10380, 31 }
|
||||
UNICODE_DESERET:: unicode_range { 0x10400, 79 }
|
||||
UNICODE_SHAVIAN:: unicode_range { 0x10450, 47 }
|
||||
UNICODE_OSMANYA:: unicode_range { 0x10480, 47 }
|
||||
UNICODE_CYPRIOT_SYLLABARY:: unicode_range { 0x10800, 63 }
|
||||
UNICODE_BYZANTINE_MUSICAL_SYMBOLS:: unicode_range { 0x1d000, 255 }
|
||||
UNICODE_MUSICAL_SYMBOLS:: unicode_range { 0x1d100, 255 }
|
||||
UNICODE_TAI_XUAN_JING_SYMBOLS:: unicode_range { 0x1d300, 95 }
|
||||
UNICODE_MATHEMATICAL_ALPHANUMERIC_SYMBOLS:: unicode_range { 0x1d400, 1023 }
|
||||
UNICODE_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B:: unicode_range { 0x20000, 42719 }
|
||||
UNICODE_CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT:: unicode_range { 0x2f800, 543 }
|
||||
UNICODE_TAGS:: unicode_range { 0xe0000, 127 }
|
||||
UNICODE_VARIATION_SELECTORS_SUPPLEMENT:: unicode_range { 0xe0100, 239 }
|
||||
UNICODE_SUPPLEMENTARY_PRIVATE_USE_AREA_A:: unicode_range { 0xf0000, 65533 }
|
||||
UNICODE_SUPPLEMENTARY_PRIVATE_USE_AREA_B :: unicode_range { 0x100000, 65533 }
|
||||
UNICODE_BASIC_LATIN :: unicode_range { 0x0000, 127 }
|
||||
UNICODE_C1_CONTROLS_AND_LATIN_1_SUPPLEMENT :: unicode_range { 0x0080, 127 }
|
||||
UNICODE_LATIN_EXTENDED_A :: unicode_range { 0x0100, 127 }
|
||||
UNICODE_LATIN_EXTENDED_B :: unicode_range { 0x0180, 207 }
|
||||
UNICODE_IPA_EXTENSIONS :: unicode_range { 0x0250, 95 }
|
||||
UNICODE_SPACING_MODIFIER_LETTERS :: unicode_range { 0x02b0, 79 }
|
||||
UNICODE_COMBINING_DIACRITICAL_MARKS :: unicode_range { 0x0300, 111 }
|
||||
UNICODE_GREEK_COPTIC :: unicode_range { 0x0370, 143 }
|
||||
UNICODE_CYRILLIC :: unicode_range { 0x0400, 255 }
|
||||
UNICODE_CYRILLIC_SUPPLEMENT :: unicode_range { 0x0500, 47 }
|
||||
UNICODE_ARMENIAN :: unicode_range { 0x0530, 95 }
|
||||
UNICODE_HEBREW :: unicode_range { 0x0590, 111 }
|
||||
UNICODE_ARABIC :: unicode_range { 0x0600, 255 }
|
||||
UNICODE_SYRIAC :: unicode_range { 0x0700, 79 }
|
||||
UNICODE_THAANA :: unicode_range { 0x0780, 63 }
|
||||
UNICODE_DEVANAGARI :: unicode_range { 0x0900, 127 }
|
||||
UNICODE_BENGALI_ASSAMESE :: unicode_range { 0x0980, 127 }
|
||||
UNICODE_GURMUKHI :: unicode_range { 0x0a00, 127 }
|
||||
UNICODE_GUJARATI :: unicode_range { 0x0a80, 127 }
|
||||
UNICODE_ORIYA :: unicode_range { 0x0b00, 127 }
|
||||
UNICODE_TAMIL :: unicode_range { 0x0b80, 127 }
|
||||
UNICODE_TELUGU :: unicode_range { 0x0c00, 127 }
|
||||
UNICODE_KANNADA :: unicode_range { 0x0c80, 127 }
|
||||
UNICODE_MALAYALAM :: unicode_range { 0x0d00, 255 }
|
||||
UNICODE_SINHALA :: unicode_range { 0x0d80, 127 }
|
||||
UNICODE_THAI :: unicode_range { 0x0e00, 127 }
|
||||
UNICODE_LAO :: unicode_range { 0x0e80, 127 }
|
||||
UNICODE_TIBETAN :: unicode_range { 0x0f00, 255 }
|
||||
UNICODE_MYANMAR :: unicode_range { 0x1000, 159 }
|
||||
UNICODE_GEORGIAN :: unicode_range { 0x10a0, 95 }
|
||||
UNICODE_HANGUL_JAMO :: unicode_range { 0x1100, 255 }
|
||||
UNICODE_ETHIOPIC :: unicode_range { 0x1200, 383 }
|
||||
UNICODE_CHEROKEE :: unicode_range { 0x13a0, 95 }
|
||||
UNICODE_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS :: unicode_range { 0x1400, 639 }
|
||||
UNICODE_OGHAM :: unicode_range { 0x1680, 31 }
|
||||
UNICODE_RUNIC :: unicode_range { 0x16a0, 95 }
|
||||
UNICODE_TAGALOG :: unicode_range { 0x1700, 31 }
|
||||
UNICODE_HANUNOO :: unicode_range { 0x1720, 31 }
|
||||
UNICODE_BUHID :: unicode_range { 0x1740, 31 }
|
||||
UNICODE_TAGBANWA :: unicode_range { 0x1760, 31 }
|
||||
UNICODE_KHMER :: unicode_range { 0x1780, 127 }
|
||||
UNICODE_MONGOLIAN :: unicode_range { 0x1800, 175 }
|
||||
UNICODE_LIMBU :: unicode_range { 0x1900, 79 }
|
||||
UNICODE_TAI_LE :: unicode_range { 0x1950, 47 }
|
||||
UNICODE_KHMER_SYMBOLS :: unicode_range { 0x19e0, 31 }
|
||||
UNICODE_PHONETIC_EXTENSIONS :: unicode_range { 0x1d00, 127 }
|
||||
UNICODE_LATIN_EXTENDED_ADDITIONAL :: unicode_range { 0x1e00, 255 }
|
||||
UNICODE_GREEK_EXTENDED :: unicode_range { 0x1f00, 255 }
|
||||
UNICODE_GENERAL_PUNCTUATION :: unicode_range { 0x2000, 111 }
|
||||
UNICODE_SUPERSCRIPTS_AND_SUBSCRIPTS :: unicode_range { 0x2070, 47 }
|
||||
UNICODE_CURRENCY_SYMBOLS :: unicode_range { 0x20a0, 47 }
|
||||
UNICODE_COMBINING_DIACRITICAL_MARKS_FOR_SYMBOLS :: unicode_range { 0x20d0, 47 }
|
||||
UNICODE_LETTERLIKE_SYMBOLS :: unicode_range { 0x2100, 79 }
|
||||
UNICODE_NUMBER_FORMS :: unicode_range { 0x2150, 63 }
|
||||
UNICODE_ARROWS :: unicode_range { 0x2190, 111 }
|
||||
UNICODE_MATHEMATICAL_OPERATORS :: unicode_range { 0x2200, 255 }
|
||||
UNICODE_MISCELLANEOUS_TECHNICAL :: unicode_range { 0x2300, 255 }
|
||||
UNICODE_CONTROL_PICTURES :: unicode_range { 0x2400, 63 }
|
||||
UNICODE_OPTICAL_CHARACTER_RECOGNITION :: unicode_range { 0x2440, 31 }
|
||||
UNICODE_ENCLOSED_ALPHANUMERICS :: unicode_range { 0x2460, 159 }
|
||||
UNICODE_BOX_DRAWING :: unicode_range { 0x2500, 127 }
|
||||
UNICODE_BLOCK_ELEMENTS :: unicode_range { 0x2580, 31 }
|
||||
UNICODE_GEOMETRIC_SHAPES :: unicode_range { 0x25a0, 95 }
|
||||
UNICODE_MISCELLANEOUS_SYMBOLS :: unicode_range { 0x2600, 255 }
|
||||
UNICODE_DINGBATS :: unicode_range { 0x2700, 191 }
|
||||
UNICODE_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_A :: unicode_range { 0x27c0, 47 }
|
||||
UNICODE_SUPPLEMENTAL_ARROWS_A :: unicode_range { 0x27f0, 15 }
|
||||
UNICODE_BRAILLE_PATTERNS :: unicode_range { 0x2800, 255 }
|
||||
UNICODE_SUPPLEMENTAL_ARROWS_B :: unicode_range { 0x2900, 127 }
|
||||
UNICODE_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B :: unicode_range { 0x2980, 127 }
|
||||
UNICODE_SUPPLEMENTAL_MATHEMATICAL_OPERATORS :: unicode_range { 0x2a00, 255 }
|
||||
UNICODE_MISCELLANEOUS_SYMBOLS_AND_ARROWS :: unicode_range { 0x2b00, 255 }
|
||||
UNICODE_CJK_RADICALS_SUPPLEMENT :: unicode_range { 0x2e80, 127 }
|
||||
UNICODE_KANGXI_RADICALS :: unicode_range { 0x2f00, 223 }
|
||||
UNICODE_IDEOGRAPHIC_DESCRIPTION_CHARACTERS :: unicode_range { 0x2ff0, 15 }
|
||||
UNICODE_CJK_SYMBOLS_AND_PUNCTUATION :: unicode_range { 0x3000, 63 }
|
||||
UNICODE_HIRAGANA :: unicode_range { 0x3040, 95 }
|
||||
UNICODE_KATAKANA :: unicode_range { 0x30a0, 95 }
|
||||
UNICODE_BOPOMOFO :: unicode_range { 0x3100, 47 }
|
||||
UNICODE_HANGUL_COMPATIBILITY_JAMO :: unicode_range { 0x3130, 95 }
|
||||
UNICODE_KANBUN_KUNTEN :: unicode_range { 0x3190, 15 }
|
||||
UNICODE_BOPOMOFO_EXTENDED :: unicode_range { 0x31a0, 31 }
|
||||
UNICODE_KATAKANA_PHONETIC_EXTENSIONS :: unicode_range { 0x31f0, 15 }
|
||||
UNICODE_ENCLOSED_CJK_LETTERS_AND_MONTHS :: unicode_range { 0x3200, 255 }
|
||||
UNICODE_CJK_COMPATIBILITY :: unicode_range { 0x3300, 255 }
|
||||
UNICODE_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A :: unicode_range { 0x3400, 6591 }
|
||||
UNICODE_YIJING_HEXAGRAM_SYMBOLS :: unicode_range { 0x4dc0, 63 }
|
||||
UNICODE_CJK_UNIFIED_IDEOGRAPHS :: unicode_range { 0x4e00, 20911 }
|
||||
UNICODE_YI_SYLLABLES :: unicode_range { 0xa000, 1167 }
|
||||
UNICODE_YI_RADICALS :: unicode_range { 0xa490, 63 }
|
||||
UNICODE_HANGUL_SYLLABLES :: unicode_range { 0xac00, 11183 }
|
||||
UNICODE_HIGH_SURROGATE_AREA :: unicode_range { 0xd800, 1023 }
|
||||
UNICODE_LOW_SURROGATE_AREA :: unicode_range { 0xdc00, 1023 }
|
||||
UNICODE_PRIVATE_USE_AREA :: unicode_range { 0xe000, 6399 }
|
||||
UNICODE_CJK_COMPATIBILITY_IDEOGRAPHS :: unicode_range { 0xf900, 511 }
|
||||
UNICODE_ALPHABETIC_PRESENTATION_FORMS :: unicode_range { 0xfb00, 79 }
|
||||
UNICODE_ARABIC_PRESENTATION_FORMS_A :: unicode_range { 0xfb50, 687 }
|
||||
UNICODE_VARIATION_SELECTORS :: unicode_range { 0xfe00, 15 }
|
||||
UNICODE_COMBINING_HALF_MARKS :: unicode_range { 0xfe20, 15 }
|
||||
UNICODE_CJK_COMPATIBILITY_FORMS :: unicode_range { 0xfe30, 31 }
|
||||
UNICODE_SMALL_FORM_VARIANTS :: unicode_range { 0xfe50, 31 }
|
||||
UNICODE_ARABIC_PRESENTATION_FORMS_B :: unicode_range { 0xfe70, 143 }
|
||||
UNICODE_HALFWIDTH_AND_FULLWIDTH_FORMS :: unicode_range { 0xff00, 239 }
|
||||
UNICODE_SPECIALS :: unicode_range { 0xfff0, 15 }
|
||||
UNICODE_LINEAR_B_SYLLABARY :: unicode_range { 0x10000, 127 }
|
||||
UNICODE_LINEAR_B_IDEOGRAMS :: unicode_range { 0x10080, 127 }
|
||||
UNICODE_AEGEAN_NUMBERS :: unicode_range { 0x10100, 63 }
|
||||
UNICODE_OLD_ITALIC :: unicode_range { 0x10300, 47 }
|
||||
UNICODE_GOTHIC :: unicode_range { 0x10330, 31 }
|
||||
UNICODE_UGARITIC :: unicode_range { 0x10380, 31 }
|
||||
UNICODE_DESERET :: unicode_range { 0x10400, 79 }
|
||||
UNICODE_SHAVIAN :: unicode_range { 0x10450, 47 }
|
||||
UNICODE_OSMANYA :: unicode_range { 0x10480, 47 }
|
||||
UNICODE_CYPRIOT_SYLLABARY :: unicode_range { 0x10800, 63 }
|
||||
UNICODE_BYZANTINE_MUSICAL_SYMBOLS :: unicode_range { 0x1d000, 255 }
|
||||
UNICODE_MUSICAL_SYMBOLS :: unicode_range { 0x1d100, 255 }
|
||||
UNICODE_TAI_XUAN_JING_SYMBOLS :: unicode_range { 0x1d300, 95 }
|
||||
UNICODE_MATHEMATICAL_ALPHANUMERIC_SYMBOLS :: unicode_range { 0x1d400, 1023 }
|
||||
UNICODE_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B :: unicode_range { 0x20000, 42719 }
|
||||
UNICODE_CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT :: unicode_range { 0x2f800, 543 }
|
||||
UNICODE_TAGS :: unicode_range { 0xe0000, 127 }
|
||||
UNICODE_VARIATION_SELECTORS_SUPPLEMENT :: unicode_range { 0xe0100, 239 }
|
||||
UNICODE_SUPPLEMENTARY_PRIVATE_USE_AREA_A :: unicode_range { 0xf0000, 65533 }
|
||||
UNICODE_SUPPLEMENTARY_PRIVATE_USE_AREA_B :: unicode_range { 0x100000, 65533 }
|
||||
|
||||
@@ -21,7 +21,7 @@ base_allocator :: struct {
|
||||
|
||||
arena_chunk :: struct {
|
||||
listElt: list_elt,
|
||||
ptr: ^c.char,
|
||||
ptr: [^]byte,
|
||||
offset: u64,
|
||||
committed: u64,
|
||||
cap: u64,
|
||||
@@ -161,8 +161,6 @@ list_iterate :: proc "c" (iter: ^List_Iterator($T)) -> (ptr: ^T, ok: bool) {
|
||||
// Strings / string lists / path strings
|
||||
//----------------------------------------------------------------
|
||||
|
||||
// TODO use odin cstring when ^c.char is used?
|
||||
|
||||
str8 :: string
|
||||
str32 :: []rune
|
||||
|
||||
@@ -179,8 +177,8 @@ str8_elt :: struct {
|
||||
|
||||
@(default_calling_convention="c", link_prefix="oc_")
|
||||
foreign {
|
||||
str8_push_buffer :: proc(arena: ^arena, len: u64, buffer: ^c.char) -> str8 ---
|
||||
str8_push_cstring :: proc(arena: ^arena, str: ^c.char) -> str8 ---
|
||||
str8_push_buffer :: proc(arena: ^arena, len: u64, buffer: [^]c.char) -> str8 ---
|
||||
str8_push_cstring :: proc(arena: ^arena, str: cstring) -> str8 ---
|
||||
str8_push_copy :: proc(arena: ^arena, s: str8) -> str8 ---
|
||||
str8_push_slice :: proc(arena: ^arena, s: str8, start: u64, end: u64) -> str8 ---
|
||||
|
||||
@@ -188,7 +186,7 @@ foreign {
|
||||
str8_pushfv :: proc(arena: ^arena, format: cstring, args: c.va_list) -> str8 ---
|
||||
str8_pushf :: proc(arena: ^arena, format: cstring, #c_vararg args: ..any) -> str8 ---
|
||||
|
||||
str8_to_cstring :: proc(arena: ^arena, string: str8) -> ^c.char ---
|
||||
str8_to_cstring :: proc(arena: ^arena, string: str8) -> cstring ---
|
||||
|
||||
str8_list_push :: proc(arena: ^arena, list: ^str8_list, str: str8) ---
|
||||
str8_list_pushf :: proc(arena: ^arena, list: ^str8_list, format: cstring, #c_vararg args: ..any) ---
|
||||
|
||||
Reference in New Issue
Block a user