aboutsummaryrefslogtreecommitdiffstats
path: root/tests/gpgscm/ffi-private.h
diff options
context:
space:
mode:
authorJustus Winter <[email protected]>2016-06-21 10:12:56 +0000
committerJustus Winter <[email protected]>2016-06-21 14:18:32 +0000
commit5fbbc4b334a73150e709a4802cac99abd8ada61d (patch)
tree9dd52ac294387f5a182669a491954c6e1c58aa3a /tests/gpgscm/ffi-private.h
parentgpgscm: Improve error reporting. (diff)
downloadgnupg-5fbbc4b334a73150e709a4802cac99abd8ada61d.tar.gz
gnupg-5fbbc4b334a73150e709a4802cac99abd8ada61d.zip
gpgscm: Use native string searching functions.
* tests/gpgscm/ffi-private.h: Handle character arguments. * tests/gpgscm/ffi.c (do_string_index): New function. (do_string_rindex): Likewise. (do_string_contains): Likewise. (ffi_init): Define new functions. * tests/gpgscm/ffi.scm (ffi-define): New macro. * tests/gpgscm/lib.scm (string-index): Use native function, demonstrate behavior. (string-rindex): Likewise. (string-contains?): Likewise. Demonstrate behavior of various other functions. (read-all): Rework so that it can handle large files. Signed-off-by: Justus Winter <[email protected]>
Diffstat (limited to '')
-rw-r--r--tests/gpgscm/ffi-private.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/tests/gpgscm/ffi-private.h b/tests/gpgscm/ffi-private.h
index 5467dac60..849d1b7e9 100644
--- a/tests/gpgscm/ffi-private.h
+++ b/tests/gpgscm/ffi-private.h
@@ -33,6 +33,7 @@ int ffi_bool_value (scheme *sc, pointer p);
#define CONVERSION_number(SC, X) (SC)->vptr->ivalue (X)
#define CONVERSION_string(SC, X) (SC)->vptr->string_value (X)
+#define CONVERSION_character(SC, X) (SC)->vptr->charvalue (X)
#define CONVERSION_list(SC, X) (X)
#define CONVERSION_bool(SC, X) ffi_bool_value ((SC), (X))
#define CONVERSION_path(SC, X) (((SC)->vptr->is_string (X) \
@@ -41,6 +42,7 @@ int ffi_bool_value (scheme *sc, pointer p);
#define IS_A_number(SC, X) (SC)->vptr->is_number (X)
#define IS_A_string(SC, X) (SC)->vptr->is_string (X)
+#define IS_A_character(SC, X) (SC)->vptr->is_character (X)
#define IS_A_list(SC, X) (SC)->vptr->is_list ((SC), X)
#define IS_A_bool(SC, X) ((X) == (SC)->F || (X) == (SC)->T)
#define IS_A_path(SC, X) ((SC)->vptr->is_string (X) \