odin-blend2d

Odin bindings to Blend2D
Log | Files | Refs | README | LICENSE

c_type_mapping.odin (1508B)


      1 #+feature dynamic-literals
      2 package bindgen2
      3 
      4 c_type_mapping := map[string]string {
      5 	// builtin types
      6 	"uint8_t"  = "u8",
      7 	"int8_t"   = "i8",
      8 	"uint16_t" = "u16",
      9 	"int16_t"  = "i16",
     10 	"uint32_t" = "u32",
     11 	"int32_t"  = "i32",
     12 	"uint64_t" = "u64",
     13 	"int64_t"  = "i64",
     14 
     15 	"int_least8_t"   = "i8",
     16 	"uint_least8_t"  = "u8",
     17 	"int_least16_t"  = "i16",
     18 	"uint_least16_t" = "u16",
     19 	"int_least32_t"  = "i32",
     20 	"uint_least32_t" = "u32",
     21 	"int_least64_t"  = "i64",
     22 	"uint_least64_t" = "u64",
     23 
     24 	"int_fast8_t"   = "i8",
     25 	"uint_fast8_t"  = "u8",
     26 	"int_fast32_t"  = "i32",
     27 	"uint_fast32_t" = "u32",
     28 	"int_fast64_t"  = "i64",
     29 	"uint_fast64_t" = "u64",
     30 	
     31 	// core:c (many of these vary by platform, so we use the `core:c` ones to make this map simpler)
     32 
     33 	"long"          = "c.long",
     34 	"unsigned long" = "c.ulong",
     35 	"int_fast16_t"  = "c.int_fast16_t",
     36 	"uint_fast16_t" = "c.uint_fast16_t",
     37 
     38 	"size_t"  = "c.size_t",
     39 	"ssize_t" = "c.ssize_t",
     40 	"wchar_t" = "c.wchar_t",
     41 
     42 	"intptr_t"  = "c.intptr_t",
     43 	"uintptr_t" = "c.uintptr_t",
     44 	"ptrdiff_t" = "c.ptrdiff_t",
     45 
     46 	"intmax_t"  = "c.intmax_t",
     47 	"uintmax_t" = "c.uintmax_t",
     48 
     49 	"va_list" = "c.va_list",
     50 
     51 	// posix
     52 	"dev_t"      = "posix.dev_t",
     53 	"blkcnt_t"   = "posix.blkcnt_t",
     54 	"blksize_t"  = "posix.blksize_t",
     55 	"clock_t"    = "posix.clock_t",
     56 	"clockid_t"  = "posix.clockid_t",
     57 	"fsblkcnt_t" = "posix.fsblkcnt_t",
     58 	"off_t"      = "posix.off_t",
     59 	"gid_t"      = "posix.gid_t",
     60 	"pid_t"      = "posix.pid_t",
     61 	"timespec"   = "posix.timespec",
     62 
     63 	// libc
     64 	"time_t" = "libc.time_t",
     65 }