Supported types - YAL-GameMaker-Tools/GmlCppExtFuncs GitHub Wiki

The following are handled by the tool:

  • bool <-> buffer_bool
  • char, int8_t <-> buffer_s8
  • unsigned char, byte, uint8_t <-> buffer_u8
  • short, int16_t <-> buffer_s16
  • unsigned short, uint16_t <-> buffer_u16
  • int, int32_t <-> buffer_s32
  • unsigned int, uint32_t <-> buffer_u32
  • long long, int64_t <-> buffer_u64
  • unsigned long long, uint64_t <-> buffer_u64
  • float <-> buffer_f32
  • double <-> buffer_f64
  • struct <-> array or (2.3+) struct
    See --struct; supports nested structures and arrays;
    Arrays of characters are converted to GML strings.
  • const char* <-> string
    (note: can only be argument/return types - if you need a string in a struct, use char str[len])
  • std::vector<T><->array<T> (note: vectors cannot currently be nested inside other vectors or structs)
  • std::tuple<...><->array
    Tuple values are unpacked
  • gml_vector<T><->array<T> Like vector, but points at data right in the GML buffer instead of making a copy.
  • std::optional<T><->T or undefined
    Can be used to accept/return a value-type or GML undefined.
    Currently can only be used on argument/return types - no optional values inside structs/arrays.

Typedefs

The tool will resolve any typedefs so long as they are in the files to be processed or indexed (--index)

⚠️ **GitHub.com Fallback** ⚠️