Merge pull request #1474 from ZackerySpytz/OCaml-INPUT-OUTPUT-INOUT-primitives

[OCaml] Add missing INPUT, OUTPUT, and INOUT typemaps for primitives
This commit is contained in:
Zackery Spytz 2019-05-13 21:44:02 -06:00 • committed by GitHub
commit f042543c6f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 972 additions and 916 deletions

View file

@ -26,6 +26,11 @@ void divide_v(int a, int b, int *OUTPUT, int *OUTPUT);
void divide_mv(int a, int b, int *OUTPUT, int *OUTPUT);
#else
%include "typemaps.i"
void divide_l(int a, int b, int *OUTPUT, int *OUTPUT);
void divide_v(int a, int b, int *OUTPUT, int *OUTPUT);
void divide_mv(int a, int b, int *OUTPUT, int *OUTPUT);
#endif
%{
@ -49,4 +54,3 @@ void divide_mv(int a, int b, int *quotient_p, int *remainder_p)
}
%}

View file

@ -34,6 +34,12 @@ FAILING_C_TESTS = \
enums \
preproc_constants_c \
CPP_TEST_CASES += \
inout \
C_TEST_CASES += \
multivalue \
ml_runme = $(SCRIPTPREFIX)$*$(SCRIPTSUFFIX)
run_testcase = \

View file

@ -0,0 +1,8 @@
open Swig
open Inout
let _ =
assert (_AddOne1 '(1.) as float = 2.);
assert (_AddOne3 '(1, 1, 1) = C_list ['2.;'2.;'2.]);
assert (_AddOne1r '(1.) as float = 2.);
;;

View file

@ -0,0 +1,8 @@
open Swig
open Multivalue
let _ =
assert (_divide_l '(37, 5) = C_list ['7;'2]);
assert (_divide_v '(41, 7) = C_list ['5;'6]);
assert (_divide_mv '(91, 13) = C_list ['7;'0]);
;;