Merge branch 'ZackerySpytz-OCaml-director-ctors'

* ZackerySpytz-OCaml-director-ctors:
  [OCaml] Fix a bug in the ctors of director classes
This commit is contained in:
William S Fulton 2019-02-09 22:28:10 +00:00
commit d7bb500315
5 changed files with 45 additions and 6 deletions

View file

@ -0,0 +1,25 @@
open Swig
open Director_default
let director_default_MyFoo ob meth args =
match meth with
"Msg" -> (match args with
| C_list [ msg ] -> C_string ("director_default_MyFoo-" ^ (msg as string))
| _ -> raise (Failure "director_default_MyFoo::Msg()"))
| _ -> (invoke ob) meth args
let _ =
let a = new_derived_object new_Foo (director_default_MyFoo) '(10) in
assert (a -> GetMsg () as string = "director_default_MyFoo-default");
assert (a -> GetMsg ("boo") as string = "director_default_MyFoo-boo");
let f = new_Foo '(10) in
assert (f -> GetMsg () as string = "Foo-default");
assert (f -> GetMsg ("boo") as string = "Foo-boo");
let b = new_Bar '(1) in
assert (b -> GetMsg () as string = "Bar-default");
assert (b -> GetMsg ("boo") as string = "Bar-boo");
let b2 = new_Bar '() in
assert (b2 -> GetMsg () as string = "Bar-default");
assert (b2 -> GetMsg ("boo") as string = "Bar-boo");
;;