cbindgen/tests/expectations/nonnull_attribute_both.compat.c
Jonathan Schwender 51a981cefc Rename expectations files
Rename expectation files to contain only one dot.
This is needed for the Cython tests as of Cython 3.
The following script was used in a clean repository
to rename the files:

```sh
 ls | sed -E -n 's/(.*)\.(both|tag)?((\..*)?\.(c|cpp|pyx))/mv "\1.\2\3" "\1_\2\3"/p' | sh
```
2023-09-04 19:37:45 +02:00

61 lines
1.4 KiB
C

#ifdef __clang__
#define CBINDGEN_NONNULL _Nonnull
#else
#define CBINDGEN_NONNULL
#endif
#include <stdarg.h>
#include <stdbool.h>
#include <stdint.h>
#include <stdlib.h>
typedef struct Opaque Opaque;
typedef struct References {
const struct Opaque *CBINDGEN_NONNULL a;
struct Opaque *CBINDGEN_NONNULL b;
const struct Opaque *c;
struct Opaque *d;
} References;
typedef struct Pointers_u64 {
float *CBINDGEN_NONNULL a;
uint64_t *CBINDGEN_NONNULL b;
struct Opaque *CBINDGEN_NONNULL c;
uint64_t *CBINDGEN_NONNULL *CBINDGEN_NONNULL d;
float *CBINDGEN_NONNULL *CBINDGEN_NONNULL e;
struct Opaque *CBINDGEN_NONNULL *CBINDGEN_NONNULL f;
uint64_t *g;
int32_t *h;
int32_t *CBINDGEN_NONNULL *i;
const uint64_t *j;
uint64_t *k;
} Pointers_u64;
#ifdef __cplusplus
extern "C" {
#endif // __cplusplus
void value_arg(struct References arg);
void mutltiple_args(int32_t *CBINDGEN_NONNULL arg,
struct Pointers_u64 *foo,
struct Opaque *CBINDGEN_NONNULL *CBINDGEN_NONNULL d);
void ref_arg(const struct Pointers_u64 *CBINDGEN_NONNULL arg);
void mut_ref_arg(struct Pointers_u64 *CBINDGEN_NONNULL arg);
void optional_ref_arg(const struct Pointers_u64 *arg);
void optional_mut_ref_arg(struct Pointers_u64 *arg);
void nullable_const_ptr(const struct Pointers_u64 *arg);
void nullable_mut_ptr(struct Pointers_u64 *arg);
#ifdef __cplusplus
} // extern "C"
#endif // __cplusplus