garnet/rust/garnet_rs.h
George Thomas e977181252 Avoid typedefs
This makes the header simpler, and silences `hs-bindgen` notices about "squashed" typedefs.
2026-02-19 17:22:15 +00:00

40 lines
549 B
C

#include <stdarg.h>
#include <stdbool.h>
#include <stdint.h>
#include <stdlib.h>
struct T {
bool a;
uint8_t b;
};
enum Shape_Tag {
Circle,
Rectangle,
};
struct Circle_Body {
double radius;
};
struct Rectangle_Body {
double width;
double height;
};
struct Shape {
enum Shape_Tag tag;
union {
struct Circle_Body circle;
struct Rectangle_Body rectangle;
} body;
};
void hello(const char *c);
void hello_struct(struct T t);
void hello_shape(struct Shape s);
__attribute__((const)) int64_t add(int64_t a, int64_t b);