P99
Macros
+ Collaboration diagram for Variable Length Arrays:

Macros

#define P99_AALLOC(T, VB, N)   P00_AALLOC(P99_ATYPE(T, , VB, N))
 Allocate a new matrix of base type T and with N dimensions as given by VB. More...
 
#define P99_AARG(TYPE, NAME, DIM, VAR)
 Declare a pointer to array function argument of basetype TYPE, with name NAME, dimension DIM and naming scheme for the length variables VAR{0}, ... VAR{DIM - 1}. More...
 
#define P99_ACALL(ARR, N, TYPE)
 Pass a pointer to an N dimensional array ARR to a function. More...
 
#define P99_ALEN(ARR, N)
 Produce the length of the argument array ARR in terms of number of elements. More...
 
#define P99_ALENS(ARR, N)   P99_FOR(ARR, N, P00_ALENS0, P00_ALEN, P99_REP(N,))
 Produce a list of the lengths of the argument array ARR in terms of the number of elements in the first N dimensions. More...
 
#define P99_ANAME(NAME, DIM, VAR)
 Declare list of variable names as produced by P99_AARG. More...
 
#define P99_AREF(T, ARR, ...)   T P99_ARRAY(*const ARR, __VA_ARGS__)
 
#define P99_AREF1(T, ARR, ...)   T P99_ARRAY(ARR, static const 1, __VA_ARGS__)
 
#define P99_ARRAY(ARR, ...)   (ARR)P99_SUBSCRIPT(__VA_ARGS__)
 
#define P99_ATYPE(T, A, B, N)   P99_AREF(T, A, P99_ALENS(*B, N))
 Declare a new matrix A of base type T and with N dimensions as given by B. More...
 
#define P99_SUBSCRIPT(...)   P99_SER(P00_SUBSCRIPT, __VA_ARGS__)
 Transform the list of arguments x0, x1, ... to array subscripts [x0][x1]... More...
 

Detailed Description

P99_AARG
#define P99_AARG(TYPE, NAME, DIM, VAR)
Declare a pointer to array function argument of basetype TYPE, with name NAME, dimension DIM and nami...
Definition: p99_for.h:750