Testing callbacks and so on.
[panamaz] / test-api / api.c
index 3458b4a..9dbb2a3 100644 (file)
@@ -1,5 +1,6 @@
 
 #include <stdio.h>
+#include <string.h>
 #include "api.h"
 
 void print_data(struct data *data) {
@@ -11,3 +12,28 @@ void print_data(struct data *data) {
                data = data->next;
        }
 }
+
+static void funca(int a) {
+       printf("funca: %d\n", a);
+}
+
+static int funcb(int b) {
+       printf("funcb: %d\n", b);
+       return b * b;
+}
+
+static int funcc(float f) {
+       printf("funcc: %f\n", f);
+       return (int)f;
+}
+
+void *api_func(const char *name) {
+       if (strcmp(name, "funca") == 0)
+               return funca;
+       else if (strcmp(name, "funcb") == 0)
+               return funcb;
+       else if (strcmp(name, "funcc") == 0)
+               return funcc;
+       else
+               return NULL;
+}