From f09a074b3e96b960ee42dc484971e3fa192499d0 Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Sun, 26 Aug 2018 07:28:50 +0200 Subject: Make data types more C-like Add a new `CKeyActionResult` that uses a `char *` instead of an `Option`. Make our `c_run_key_action()` return this type instead of `KeyActionResult`. Include some code to handle the translation between the two types. Names for now are just temporary so I can get something working. We'll re-think proper names once I've tested this manually and have something somewhat working. --- dome_key_map.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'dome_key_map.h') diff --git a/dome_key_map.h b/dome_key_map.h index d128979..1206d1d 100644 --- a/dome_key_map.h +++ b/dome_key_map.h @@ -16,9 +16,14 @@ typedef struct MapKind MapKind; typedef struct Option_CString Option_CString; +typedef struct { + const char *action; + const MapKind *kind; +} CKeyActionResult; + typedef struct { Option_CString action; MapKind kind; } KeyActionResult; -const KeyActionResult *c_run_key_action(const HeadphoneButton *trigger, size_t length); +const CKeyActionResult *c_run_key_action(const HeadphoneButton *trigger, size_t length); -- cgit v1.2.3