summaryrefslogtreecommitdiffstats
path: root/test cases/vala/24 export dynamic shared module/app.vala
blob: e016ecd8b0928fe9a40cc50d09174a19b218547d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
const string MODULE_LIB = "libapp_module.so";

delegate int ModuleFunc ();

public int app_func () {
  return 41;
}

int main () {
  Module module;
  void *func;
  unowned ModuleFunc mfunc;

  module = Module.open (MODULE_LIB, ModuleFlags.BIND_LAZY);
  module.symbol ("module_func", out func);
  mfunc = (ModuleFunc) func;

  print ("%d\n", mfunc ());

  return 0;
}