1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
-record(func,
{
name = undefined, % real name
type = void, % method type
params = [], % arguments to the function
where = both, % C code and/or erlang
id = undefined, % Integer
alt = undefined, % Function alternative
ext = undefined % Have ARB or other extension
}
).
-record(arg,
{
name = undefined,
type = undefined,
in = true,
where = both, % both in c and erl or only in either
alt = undefined
}).
-record(type,
{
name = undefined, % typename
base = undefined, % basename int, char, float ..
size = 4, % in bytes
by_val = true, % or false = by_ref
single = true, % Single or array (list)
ref = undefined, % {pointer, N}
mod = [] % const ...
}
).
-record(def, {name, val, type}). %% type=hex, int, string
-define(error(What),
erlang:error({{?MODULE,?LINE},{get(current_func)},What})).
-define(warning(Str,Args),
io:format("~p:~p Warning:"++Str, [?MODULE,?LINE] ++ Args)).
|