blob: b432f78aafbfc5258ac654084c6f3b6be1d3ece0 [file]
// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// WARNING: THIS FILE IS MACHINE GENERATED. DO NOT EDIT.
// Generated from the banjo.examples.protocolvector banjo file
#pragma once
#include <zircon/compiler.h>
#include <zircon/types.h>
__BEGIN_CDECLS
// Forward declarations
#define vector_size UINT32_C(32)
typedef struct vector_of_vectors_protocol vector_of_vectors_protocol_t;
typedef struct vector_of_vectors_protocol_ops vector_of_vectors_protocol_ops_t;
typedef struct vector_protocol vector_protocol_t;
typedef struct vector_protocol_ops vector_protocol_ops_t;
typedef struct vector2_protocol vector2_protocol_t;
typedef struct vector2_protocol_ops vector2_protocol_ops_t;
// Declarations
struct vector_of_vectors_protocol_ops {
void (*bool)(void* ctx, const bool* b_list, size_t b_count, bool* out_b_list, size_t b_count, size_t* out_b_actual);
void (*int8)(void* ctx, const int8_t* i8_list, size_t i8_count, int8_t* out_i8_list, size_t i8_count, size_t* out_i8_actual);
void (*int16)(void* ctx, const int16_t* i16_list, size_t i16_count, int16_t* out_i16_list, size_t i16_count, size_t* out_i16_actual);
void (*int32)(void* ctx, const int32_t* i32_list, size_t i32_count, int32_t* out_i32_list, size_t i32_count, size_t* out_i32_actual);
void (*int64)(void* ctx, const int64_t* i64_list, size_t i64_count, int64_t* out_i64_list, size_t i64_count, size_t* out_i64_actual);
void (*uint8)(void* ctx, const uint8_t* u8_list, size_t u8_count, uint8_t* out_u8_list, size_t u8_count, size_t* out_u8_actual);
void (*uint16)(void* ctx, const uint16_t* u16_list, size_t u16_count, uint16_t* out_u16_list, size_t u16_count, size_t* out_u16_actual);
void (*uint32)(void* ctx, const uint32_t* u32_list, size_t u32_count, uint32_t* out_u32_list, size_t u32_count, size_t* out_u32_actual);
void (*uint64)(void* ctx, const uint64_t* u64_list, size_t u64_count, uint64_t* out_u64_list, size_t u64_count, size_t* out_u64_actual);
void (*float32)(void* ctx, const float* f32_list, size_t f32_count, float* out_f32_list, size_t f32_count, size_t* out_f32_actual);
void (*float64)(void* ctx, const double* u64_list, size_t u64_count, double* out_f64_list, size_t f64_count, size_t* out_f64_actual);
void (*handle)(void* ctx, const zx_handle_t* u64_list, size_t u64_count, zx_handle_t* out_f64_list, size_t f64_count, size_t* out_f64_actual);
};
struct vector_of_vectors_protocol {
vector_of_vectors_protocol_ops_t* ops;
void* ctx;
};
struct vector_protocol_ops {
void (*bool)(void* ctx, const bool* b_list, size_t b_count, bool* out_b_list, size_t b_count, size_t* out_b_actual);
void (*int8)(void* ctx, const int8_t* i8_list, size_t i8_count, int8_t* out_i8_list, size_t i8_count, size_t* out_i8_actual);
void (*int16)(void* ctx, const int16_t* i16_list, size_t i16_count, int16_t* out_i16_list, size_t i16_count, size_t* out_i16_actual);
void (*int32)(void* ctx, const int32_t* i32_list, size_t i32_count, int32_t* out_i32_list, size_t i32_count, size_t* out_i32_actual);
void (*int64)(void* ctx, const int64_t* i64_list, size_t i64_count, int64_t* out_i64_list, size_t i64_count, size_t* out_i64_actual);
void (*uint8)(void* ctx, const uint8_t* u8_list, size_t u8_count, uint8_t* out_u8_list, size_t u8_count, size_t* out_u8_actual);
void (*uint16)(void* ctx, const uint16_t* u16_list, size_t u16_count, uint16_t* out_u16_list, size_t u16_count, size_t* out_u16_actual);
void (*uint32)(void* ctx, const uint32_t* u32_list, size_t u32_count, uint32_t* out_u32_list, size_t u32_count, size_t* out_u32_actual);
void (*uint64)(void* ctx, const uint64_t* u64_list, size_t u64_count, uint64_t* out_u64_list, size_t u64_count, size_t* out_u64_actual);
void (*float32)(void* ctx, const float* f32_list, size_t f32_count, float* out_f32_list, size_t f32_count, size_t* out_f32_actual);
void (*float64)(void* ctx, const double* u64_list, size_t u64_count, double* out_f64_list, size_t f64_count, size_t* out_f64_actual);
void (*handle)(void* ctx, const zx_handle_t* u64_list, size_t u64_count, zx_handle_t* out_f64_list, size_t f64_count, size_t* out_f64_actual);
};
struct vector_protocol {
vector_protocol_ops_t* ops;
void* ctx;
};
struct vector2_protocol_ops {
void (*bool)(void* ctx, const bool* b_list, size_t b_count, bool* out_b_list, size_t b_count, size_t* out_b_actual);
void (*int8)(void* ctx, const int8_t* i8_list, size_t i8_count, int8_t* out_i8_list, size_t i8_count, size_t* out_i8_actual);
void (*int16)(void* ctx, const int16_t* i16_list, size_t i16_count, int16_t* out_i16_list, size_t i16_count, size_t* out_i16_actual);
void (*int32)(void* ctx, const int32_t* i32_list, size_t i32_count, int32_t* out_i32_list, size_t i32_count, size_t* out_i32_actual);
void (*int64)(void* ctx, const int64_t* i64_list, size_t i64_count, int64_t* out_i64_list, size_t i64_count, size_t* out_i64_actual);
void (*uint8)(void* ctx, const uint8_t* u8_list, size_t u8_count, uint8_t* out_u8_list, size_t u8_count, size_t* out_u8_actual);
void (*uint16)(void* ctx, const uint16_t* u16_list, size_t u16_count, uint16_t* out_u16_list, size_t u16_count, size_t* out_u16_actual);
void (*uint32)(void* ctx, const uint32_t* u32_list, size_t u32_count, uint32_t* out_u32_list, size_t u32_count, size_t* out_u32_actual);
void (*uint64)(void* ctx, const uint64_t* u64_list, size_t u64_count, uint64_t* out_u64_list, size_t u64_count, size_t* out_u64_actual);
void (*float32)(void* ctx, const float* f32_list, size_t f32_count, float* out_f32_list, size_t f32_count, size_t* out_f32_actual);
void (*float64)(void* ctx, const double* u64_list, size_t u64_count, double* out_f64_list, size_t f64_count, size_t* out_f64_actual);
void (*handle)(void* ctx, const zx_handle_t* u64_list, size_t u64_count, zx_handle_t* out_f64_list, size_t f64_count, size_t* out_f64_actual);
};
struct vector2_protocol {
vector2_protocol_ops_t* ops;
void* ctx;
};
// Helpers
static inline void vector_of_vectors_bool(const vector_of_vectors_protocol_t* proto, const bool* b_list, size_t b_count, bool* out_b_list, size_t b_count, size_t* out_b_actual) {
proto->ops->bool(proto->ctx, b_list, b_count, out_b_list, b_count, out_b_actual);
}
static inline void vector_of_vectors_int8(const vector_of_vectors_protocol_t* proto, const int8_t* i8_list, size_t i8_count, int8_t* out_i8_list, size_t i8_count, size_t* out_i8_actual) {
proto->ops->int8(proto->ctx, i8_list, i8_count, out_i8_list, i8_count, out_i8_actual);
}
static inline void vector_of_vectors_int16(const vector_of_vectors_protocol_t* proto, const int16_t* i16_list, size_t i16_count, int16_t* out_i16_list, size_t i16_count, size_t* out_i16_actual) {
proto->ops->int16(proto->ctx, i16_list, i16_count, out_i16_list, i16_count, out_i16_actual);
}
static inline void vector_of_vectors_int32(const vector_of_vectors_protocol_t* proto, const int32_t* i32_list, size_t i32_count, int32_t* out_i32_list, size_t i32_count, size_t* out_i32_actual) {
proto->ops->int32(proto->ctx, i32_list, i32_count, out_i32_list, i32_count, out_i32_actual);
}
static inline void vector_of_vectors_int64(const vector_of_vectors_protocol_t* proto, const int64_t* i64_list, size_t i64_count, int64_t* out_i64_list, size_t i64_count, size_t* out_i64_actual) {
proto->ops->int64(proto->ctx, i64_list, i64_count, out_i64_list, i64_count, out_i64_actual);
}
static inline void vector_of_vectors_uint8(const vector_of_vectors_protocol_t* proto, const uint8_t* u8_list, size_t u8_count, uint8_t* out_u8_list, size_t u8_count, size_t* out_u8_actual) {
proto->ops->uint8(proto->ctx, u8_list, u8_count, out_u8_list, u8_count, out_u8_actual);
}
static inline void vector_of_vectors_uint16(const vector_of_vectors_protocol_t* proto, const uint16_t* u16_list, size_t u16_count, uint16_t* out_u16_list, size_t u16_count, size_t* out_u16_actual) {
proto->ops->uint16(proto->ctx, u16_list, u16_count, out_u16_list, u16_count, out_u16_actual);
}
static inline void vector_of_vectors_uint32(const vector_of_vectors_protocol_t* proto, const uint32_t* u32_list, size_t u32_count, uint32_t* out_u32_list, size_t u32_count, size_t* out_u32_actual) {
proto->ops->uint32(proto->ctx, u32_list, u32_count, out_u32_list, u32_count, out_u32_actual);
}
static inline void vector_of_vectors_uint64(const vector_of_vectors_protocol_t* proto, const uint64_t* u64_list, size_t u64_count, uint64_t* out_u64_list, size_t u64_count, size_t* out_u64_actual) {
proto->ops->uint64(proto->ctx, u64_list, u64_count, out_u64_list, u64_count, out_u64_actual);
}
static inline void vector_of_vectors_float32(const vector_of_vectors_protocol_t* proto, const float* f32_list, size_t f32_count, float* out_f32_list, size_t f32_count, size_t* out_f32_actual) {
proto->ops->float32(proto->ctx, f32_list, f32_count, out_f32_list, f32_count, out_f32_actual);
}
static inline void vector_of_vectors_float64(const vector_of_vectors_protocol_t* proto, const double* u64_list, size_t u64_count, double* out_f64_list, size_t f64_count, size_t* out_f64_actual) {
proto->ops->float64(proto->ctx, u64_list, u64_count, out_f64_list, f64_count, out_f64_actual);
}
static inline void vector_of_vectors_handle(const vector_of_vectors_protocol_t* proto, const zx_handle_t* u64_list, size_t u64_count, zx_handle_t* out_f64_list, size_t f64_count, size_t* out_f64_actual) {
proto->ops->handle(proto->ctx, u64_list, u64_count, out_f64_list, f64_count, out_f64_actual);
}
static inline void vector_bool(const vector_protocol_t* proto, const bool* b_list, size_t b_count, bool* out_b_list, size_t b_count, size_t* out_b_actual) {
proto->ops->bool(proto->ctx, b_list, b_count, out_b_list, b_count, out_b_actual);
}
static inline void vector_int8(const vector_protocol_t* proto, const int8_t* i8_list, size_t i8_count, int8_t* out_i8_list, size_t i8_count, size_t* out_i8_actual) {
proto->ops->int8(proto->ctx, i8_list, i8_count, out_i8_list, i8_count, out_i8_actual);
}
static inline void vector_int16(const vector_protocol_t* proto, const int16_t* i16_list, size_t i16_count, int16_t* out_i16_list, size_t i16_count, size_t* out_i16_actual) {
proto->ops->int16(proto->ctx, i16_list, i16_count, out_i16_list, i16_count, out_i16_actual);
}
static inline void vector_int32(const vector_protocol_t* proto, const int32_t* i32_list, size_t i32_count, int32_t* out_i32_list, size_t i32_count, size_t* out_i32_actual) {
proto->ops->int32(proto->ctx, i32_list, i32_count, out_i32_list, i32_count, out_i32_actual);
}
static inline void vector_int64(const vector_protocol_t* proto, const int64_t* i64_list, size_t i64_count, int64_t* out_i64_list, size_t i64_count, size_t* out_i64_actual) {
proto->ops->int64(proto->ctx, i64_list, i64_count, out_i64_list, i64_count, out_i64_actual);
}
static inline void vector_uint8(const vector_protocol_t* proto, const uint8_t* u8_list, size_t u8_count, uint8_t* out_u8_list, size_t u8_count, size_t* out_u8_actual) {
proto->ops->uint8(proto->ctx, u8_list, u8_count, out_u8_list, u8_count, out_u8_actual);
}
static inline void vector_uint16(const vector_protocol_t* proto, const uint16_t* u16_list, size_t u16_count, uint16_t* out_u16_list, size_t u16_count, size_t* out_u16_actual) {
proto->ops->uint16(proto->ctx, u16_list, u16_count, out_u16_list, u16_count, out_u16_actual);
}
static inline void vector_uint32(const vector_protocol_t* proto, const uint32_t* u32_list, size_t u32_count, uint32_t* out_u32_list, size_t u32_count, size_t* out_u32_actual) {
proto->ops->uint32(proto->ctx, u32_list, u32_count, out_u32_list, u32_count, out_u32_actual);
}
static inline void vector_uint64(const vector_protocol_t* proto, const uint64_t* u64_list, size_t u64_count, uint64_t* out_u64_list, size_t u64_count, size_t* out_u64_actual) {
proto->ops->uint64(proto->ctx, u64_list, u64_count, out_u64_list, u64_count, out_u64_actual);
}
static inline void vector_float32(const vector_protocol_t* proto, const float* f32_list, size_t f32_count, float* out_f32_list, size_t f32_count, size_t* out_f32_actual) {
proto->ops->float32(proto->ctx, f32_list, f32_count, out_f32_list, f32_count, out_f32_actual);
}
static inline void vector_float64(const vector_protocol_t* proto, const double* u64_list, size_t u64_count, double* out_f64_list, size_t f64_count, size_t* out_f64_actual) {
proto->ops->float64(proto->ctx, u64_list, u64_count, out_f64_list, f64_count, out_f64_actual);
}
static inline void vector_handle(const vector_protocol_t* proto, const zx_handle_t* u64_list, size_t u64_count, zx_handle_t* out_f64_list, size_t f64_count, size_t* out_f64_actual) {
proto->ops->handle(proto->ctx, u64_list, u64_count, out_f64_list, f64_count, out_f64_actual);
}
static inline void vector2_bool(const vector2_protocol_t* proto, const bool* b_list, size_t b_count, bool* out_b_list, size_t b_count, size_t* out_b_actual) {
proto->ops->bool(proto->ctx, b_list, b_count, out_b_list, b_count, out_b_actual);
}
static inline void vector2_int8(const vector2_protocol_t* proto, const int8_t* i8_list, size_t i8_count, int8_t* out_i8_list, size_t i8_count, size_t* out_i8_actual) {
proto->ops->int8(proto->ctx, i8_list, i8_count, out_i8_list, i8_count, out_i8_actual);
}
static inline void vector2_int16(const vector2_protocol_t* proto, const int16_t* i16_list, size_t i16_count, int16_t* out_i16_list, size_t i16_count, size_t* out_i16_actual) {
proto->ops->int16(proto->ctx, i16_list, i16_count, out_i16_list, i16_count, out_i16_actual);
}
static inline void vector2_int32(const vector2_protocol_t* proto, const int32_t* i32_list, size_t i32_count, int32_t* out_i32_list, size_t i32_count, size_t* out_i32_actual) {
proto->ops->int32(proto->ctx, i32_list, i32_count, out_i32_list, i32_count, out_i32_actual);
}
static inline void vector2_int64(const vector2_protocol_t* proto, const int64_t* i64_list, size_t i64_count, int64_t* out_i64_list, size_t i64_count, size_t* out_i64_actual) {
proto->ops->int64(proto->ctx, i64_list, i64_count, out_i64_list, i64_count, out_i64_actual);
}
static inline void vector2_uint8(const vector2_protocol_t* proto, const uint8_t* u8_list, size_t u8_count, uint8_t* out_u8_list, size_t u8_count, size_t* out_u8_actual) {
proto->ops->uint8(proto->ctx, u8_list, u8_count, out_u8_list, u8_count, out_u8_actual);
}
static inline void vector2_uint16(const vector2_protocol_t* proto, const uint16_t* u16_list, size_t u16_count, uint16_t* out_u16_list, size_t u16_count, size_t* out_u16_actual) {
proto->ops->uint16(proto->ctx, u16_list, u16_count, out_u16_list, u16_count, out_u16_actual);
}
static inline void vector2_uint32(const vector2_protocol_t* proto, const uint32_t* u32_list, size_t u32_count, uint32_t* out_u32_list, size_t u32_count, size_t* out_u32_actual) {
proto->ops->uint32(proto->ctx, u32_list, u32_count, out_u32_list, u32_count, out_u32_actual);
}
static inline void vector2_uint64(const vector2_protocol_t* proto, const uint64_t* u64_list, size_t u64_count, uint64_t* out_u64_list, size_t u64_count, size_t* out_u64_actual) {
proto->ops->uint64(proto->ctx, u64_list, u64_count, out_u64_list, u64_count, out_u64_actual);
}
static inline void vector2_float32(const vector2_protocol_t* proto, const float* f32_list, size_t f32_count, float* out_f32_list, size_t f32_count, size_t* out_f32_actual) {
proto->ops->float32(proto->ctx, f32_list, f32_count, out_f32_list, f32_count, out_f32_actual);
}
static inline void vector2_float64(const vector2_protocol_t* proto, const double* u64_list, size_t u64_count, double* out_f64_list, size_t f64_count, size_t* out_f64_actual) {
proto->ops->float64(proto->ctx, u64_list, u64_count, out_f64_list, f64_count, out_f64_actual);
}
static inline void vector2_handle(const vector2_protocol_t* proto, const zx_handle_t* u64_list, size_t u64_count, zx_handle_t* out_f64_list, size_t f64_count, size_t* out_f64_actual) {
proto->ops->handle(proto->ctx, u64_list, u64_count, out_f64_list, f64_count, out_f64_actual);
}
__END_CDECLS