You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
193 lines
4.4 KiB
193 lines
4.4 KiB
// IG_C99 version 1.0
|
|
// test_api.h
|
|
// License text
|
|
#pragma once
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include "idl_core.h"
|
|
|
|
// Deftypes
|
|
// --------
|
|
|
|
typedef int deftype1;
|
|
typedef string deftype2;
|
|
typedef list stringlist;
|
|
|
|
// Enums
|
|
// -----
|
|
|
|
typedef enum _IG_C99_IMPLICIT_VALUE_ITEMS {
|
|
IG_C99_IMPLICIT_VALUE_ITEMS_ITEM1,
|
|
IG_C99_IMPLICIT_VALUE_ITEMS_ITEM2,
|
|
IG_C99_IMPLICIT_VALUE_ITEMS_ITEM3,
|
|
IG_C99_IMPLICIT_VALUE_ITEMS_ITEM4
|
|
} IG_C99_IMPLICIT_VALUE_ITEMS;
|
|
|
|
typedef enum _IG_C99_EXPLICIT_DEC_VALUE_ITEMS {
|
|
IG_C99_EXPLICIT_DEC_VALUE_ITEMS_ITEM1 = 0,
|
|
IG_C99_EXPLICIT_DEC_VALUE_ITEMS_ITEM2 = 2,
|
|
IG_C99_EXPLICIT_DEC_VALUE_ITEMS_ITEM3 = 987,
|
|
IG_C99_EXPLICIT_DEC_VALUE_ITEMS_ITEM4 = -3
|
|
} IG_C99_EXPLICIT_DEC_VALUE_ITEMS;
|
|
|
|
typedef enum _IG_C99_EXPLICIT_HEX_VALUE_ITEMS {
|
|
IG_C99_EXPLICIT_HEX_VALUE_ITEMS_ITEM1 = 0x0,
|
|
IG_C99_EXPLICIT_HEX_VALUE_ITEMS_ITEM2 = 0x2,
|
|
IG_C99_EXPLICIT_HEX_VALUE_ITEMS_ITEM2 = 0xFF,
|
|
IG_C99_EXPLICIT_HEX_VALUE_ITEMS_ITEM2 = 0xff,
|
|
IG_C99_EXPLICIT_HEX_VALUE_ITEMS_ITEM3 = 0x987,
|
|
IG_C99_EXPLICIT_HEX_VALUE_ITEMS_ITEM4 = 0x3
|
|
} IG_C99_EXPLICIT_HEX_VALUE_ITEMS;
|
|
|
|
typedef enum _IG_C99_DOC_WELL_FORMATTED {
|
|
IG_C99_DOC_WELL_FORMATTED_ITEM1, // oneline doc
|
|
IG_C99_DOC_WELL_FORMATTED_ITEM2,
|
|
|
|
// item 3
|
|
// ------
|
|
// multiline
|
|
// doc
|
|
IG_C99_DOC_WELL_FORMATTED_ITEM3,
|
|
IG_C99_DOC_WELL_FORMATTED_DECITEM1 = 23, // oneline doc
|
|
IG_C99_DOC_WELL_FORMATTED_DECITEM2 = 42,
|
|
|
|
// item 3
|
|
// ------
|
|
// multiline
|
|
// doc
|
|
IG_C99_DOC_WELL_FORMATTED_DECITEM3 = -9999,
|
|
IG_C99_DOC_WELL_FORMATTED_HEXITEM1 = 0x23, // oneline doc
|
|
IG_C99_DOC_WELL_FORMATTED_HEXITEM2 = 0x42,
|
|
|
|
// item 3
|
|
// ------
|
|
// multiline
|
|
// doc
|
|
IG_C99_DOC_WELL_FORMATTED_HEXITEM3 = 0x99FF
|
|
} IG_C99_DOC_WELL_FORMATTED;
|
|
|
|
typedef enum _IG_C99_DOC_BADLY_FORMATTTED {
|
|
IG_C99_DOC_BADLY_FORMATTTED_ITEM1 = 0,
|
|
IG_C99_DOC_BADLY_FORMATTTED_ITEM2 = 1,
|
|
|
|
// item 3
|
|
// ------
|
|
// multiline
|
|
// doc with bad formattting
|
|
IG_C99_DOC_BADLY_FORMATTTED_ITEM3 = 2
|
|
} IG_C99_DOC_BADLY_FORMATTTED;
|
|
|
|
typedef enum _IG_C99_ENUM1 {
|
|
IG_C99_ENUM1_ITEM1,
|
|
IG_C99_ENUM1_ITEM2,
|
|
IG_C99_ENUM1_ITEM3
|
|
} IG_C99_ENUM1;
|
|
|
|
|
|
// Structs
|
|
// -------
|
|
|
|
typedef struct _Ig_c99_Struct1 {
|
|
int int1;
|
|
size size1;
|
|
string string1;
|
|
} Ig_c99_Struct1;
|
|
|
|
typedef struct _Ig_c99_Struct1 {
|
|
int int1;
|
|
size size1;
|
|
string string1;
|
|
} Ig_c99_Struct1;
|
|
|
|
|
|
// Functions
|
|
// ---------
|
|
|
|
/*
|
|
<!-- test_one_param() -->
|
|
|
|
@param[borrow] p Multiline Doc
|
|
|
|
|
|
*/
|
|
PEP_STATUS test_one_param(
|
|
size p
|
|
);
|
|
|
|
|
|
/*
|
|
<!-- test_two_param() -->
|
|
|
|
@param[borrow] p1 Multiline Doc
|
|
|
|
@param[borrow] p2 Multiline Doc
|
|
|
|
|
|
*/
|
|
PEP_STATUS test_two_param(
|
|
size p1,
|
|
size p2
|
|
);
|
|
|
|
|
|
/*
|
|
<!-- method_test_all() -->
|
|
|
|
@param[borrow] borrow_primitive_basetype
|
|
@param[mborrow] mborrow_primitive_basetype
|
|
@param[borrow] borrow_obj_basetype
|
|
@param[mborrow] mborrow_obj_basetype
|
|
@param[claim] claim_obj_basetype
|
|
@param[provide] provide_obj_basetype
|
|
@param[borrow] borrow_enum
|
|
@param[mborrow] mborrow_enum
|
|
@param[borrow] borrow_struct
|
|
@param[mborrow] mborrow_struct
|
|
@param[claim] claim_struct
|
|
@param[provide] provide_struct
|
|
@param[borrow] borrow_deftype_primitive_basetype
|
|
@param[mborrow] mborrow_deftype_primitive_basetype
|
|
@param[borrow] borrow_deftype_obj_basetype
|
|
@param[mborrow] mborrow_deftype_obj_basetype
|
|
@param[claim] claim_deftype_obj_basetype
|
|
@param[provide] provide_deftype_obj_basetype
|
|
@param[borrow] borrow_deftype_generic
|
|
@param[mborrow] mborrow_deftype_generic
|
|
@param[claim] claim_deftype_generic
|
|
@param[provide] provide_deftype_generic
|
|
|
|
*/
|
|
PEP_STATUS method_test_all(
|
|
int borrow_primitive_basetype,
|
|
int* mborrow_primitive_basetype,
|
|
string borrow_obj_basetype,
|
|
string* mborrow_obj_basetype,
|
|
string claim_obj_basetype,
|
|
string* provide_obj_basetype,
|
|
enum1 borrow_enum,
|
|
enum1* mborrow_enum,
|
|
struct1 borrow_struct,
|
|
struct1* mborrow_struct,
|
|
struct1 claim_struct,
|
|
struct1* provide_struct,
|
|
deftype1 borrow_deftype_primitive_basetype,
|
|
deftype1* mborrow_deftype_primitive_basetype,
|
|
deftype2 borrow_deftype_obj_basetype,
|
|
deftype2* mborrow_deftype_obj_basetype,
|
|
deftype2 claim_deftype_obj_basetype,
|
|
deftype2* provide_deftype_obj_basetype,
|
|
stringlist borrow_deftype_generic,
|
|
stringlist* mborrow_deftype_generic,
|
|
stringlist claim_deftype_generic,
|
|
stringlist* provide_deftype_generic
|
|
);
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
} // extern "C"
|
|
#endif
|
|
|