PageRenderTime 48ms CodeModel.GetById 25ms RepoModel.GetById 0ms app.codeStats 0ms

/trunk/Examples/test-suite/ocaml/newobject1_runme.ml

#
OCaml | 26 lines | 21 code | 5 blank | 0 comment | 6 complexity | 73c4b6fd41130c43d6df5b116bdaa344 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
  1. open Swig
  2. open Newobject1
  3. exception RuntimeError of string * int
  4. let foo1 = ref (_Foo_makeFoo C_void)
  5. let _ = if get_int (_Foo_fooCount C_void) != 1 then
  6. raise (RuntimeError ("(1) Foo.fooCount != 1",
  7. get_int (_Foo_fooCount C_void)))
  8. let foo2 = ref ((invoke !foo1) "makeMore" C_void)
  9. let _ = if get_int (_Foo_fooCount C_void) != 2 then
  10. raise (RuntimeError ("(2) Foo.fooCount != 2",
  11. get_int (_Foo_fooCount C_void)))
  12. let _ = begin
  13. foo1 := C_void ; Gc.full_major () ;
  14. (if get_int (_Foo_fooCount C_void) != 1 then
  15. raise (RuntimeError ("(3) Foo.fooCount != 1",
  16. get_int (_Foo_fooCount C_void)))) ;
  17. foo2 := C_void ; Gc.full_major () ;
  18. (if get_int (_Foo_fooCount C_void) != 0 then
  19. raise (RuntimeError ("(4) Foo.fooCount != 0",
  20. get_int (_Foo_fooCount C_void)))) ;
  21. end