31 lines
1.1 KiB
OpenEdge ABL
31 lines
1.1 KiB
OpenEdge ABL
//
|
|
// This file was taken from RakNet 4.082 without any modifications.
|
|
// Please see licenses/RakNet license.txt for the underlying license and related copyright.
|
|
//
|
|
|
|
//Macros that are not in a specific file are placed here, note that not all macros are here some are spread throughout the other files
|
|
|
|
//This you only need it once for all simple situations
|
|
%define SIMPLE_OBJECT_OUTPUT_TYPEMAP(CTYPE, CSTYPE)
|
|
%typemap(ctype) CTYPE *OUTPUT, CTYPE &OUTPUT "CTYPE *"
|
|
%typemap(cstype) CTYPE *OUTPUT, CTYPE &OUTPUT "out CSTYPE"
|
|
%typemap(csin,
|
|
pre=" CSTYPE temp$csinput = new CSTYPE();",
|
|
post=" $csinput = temp$csinput;",
|
|
cshin="ref $csinput"
|
|
) CTYPE *OUTPUT, CTYPE &OUTPUT "CSTYPE.getCPtr(temp$csinput)"
|
|
|
|
%typemap(csdirectorin) CTYPE *OUTPUT, CTYPE &OUTPUT "$iminput"
|
|
%typemap(csdirectorout) CTYPE *OUTPUT, CTYPE &OUTPUT "$cscall"
|
|
|
|
%typemap(in) CTYPE *OUTPUT, CTYPE &OUTPUT
|
|
%{ $1 = ($1_ltype)$input; %}
|
|
|
|
%typemap(directorout,warning="Need to provide CTYPE *OUTPUT directorout typemap") TYPE *OUTPUT, TYPE &OUTPUT {
|
|
}
|
|
|
|
%typemap(directorin) CTYPE &OUTPUT
|
|
%{ $input = &$1; %}
|
|
|
|
%enddef
|