function pointers and callbacks
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
#ifndef BROLANG_RECORDS_H
|
||||
#define BROLANG_RECORDS_H
|
||||
|
||||
typedef struct Pair {
|
||||
int left;
|
||||
int right;
|
||||
} Pair;
|
||||
|
||||
typedef struct Triple {
|
||||
int first;
|
||||
int second;
|
||||
int third;
|
||||
} Triple;
|
||||
|
||||
typedef struct Floats {
|
||||
float x;
|
||||
float y;
|
||||
} Floats;
|
||||
|
||||
typedef struct Large {
|
||||
long values[3];
|
||||
} Large;
|
||||
|
||||
typedef struct Nested {
|
||||
Pair pair;
|
||||
int tail;
|
||||
} Nested;
|
||||
|
||||
typedef struct Arrays {
|
||||
int values[3];
|
||||
} Arrays;
|
||||
|
||||
typedef union Choice {
|
||||
long integer;
|
||||
double decimal;
|
||||
} Choice;
|
||||
|
||||
typedef struct Forward Forward;
|
||||
struct Forward {
|
||||
int value;
|
||||
};
|
||||
|
||||
Pair echo_pair(Pair value);
|
||||
Triple echo_triple(Triple value);
|
||||
Floats echo_floats(Floats value);
|
||||
Large echo_large(Large value);
|
||||
Nested echo_nested(Nested value);
|
||||
Arrays echo_arrays(Arrays value);
|
||||
Choice echo_choice(Choice value);
|
||||
Forward echo_forward(Forward value);
|
||||
int verify_records(Pair pair, Triple triple, Floats floats, Large large, Nested nested, Arrays arrays, Choice choice);
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user