aboutsummaryrefslogtreecommitdiffstats
path: root/gawkapi.h
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2012-07-09 21:17:10 +0300
committerArnold D. Robbins <arnold@skeeve.com>2012-07-09 21:17:10 +0300
commit7d37bcd5a8066718b15de8c03725708819389931 (patch)
tree4ac9c8f43898c9f5a7a5bd6183fb075d22fa8cfe /gawkapi.h
parente1749c3c853ace06796efd7dd3bd3e9bf025a549 (diff)
downloadegawk-7d37bcd5a8066718b15de8c03725708819389931.tar.gz
egawk-7d37bcd5a8066718b15de8c03725708819389931.tar.bz2
egawk-7d37bcd5a8066718b15de8c03725708819389931.zip
API: Update set_array_element(). Adjust extensions.
Diffstat (limited to 'gawkapi.h')
-rw-r--r--gawkapi.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/gawkapi.h b/gawkapi.h
index 10f1e0c3..5be5ea08 100644
--- a/gawkapi.h
+++ b/gawkapi.h
@@ -316,7 +316,8 @@ typedef struct gawk_api {
* element->index and element->value.
*/
awk_bool_t (*set_array_element)(awk_ext_id_t id, awk_array_t a_cookie,
- awk_element_t *element);
+ const awk_value_t *const index,
+ const awk_value_t *const value);
/*
* Remove the element with the given index.
@@ -391,8 +392,11 @@ typedef struct gawk_api {
#define get_array_element(array, index, wanted, result) \
(api->get_array_element(ext_id, array, index, wanted, result))
-#define set_array_element(array, element) \
- (api->set_array_element(ext_id, array, element))
+#define set_array_element(array, index, value) \
+ (api->set_array_element(ext_id, array, index, value))
+
+#define set_array_element_by_elem(array, elem) \
+ (set_array_element(array, & (elem)->index, & (elem)->value))
#define del_array_element(array, index) \
(api->del_array_element(ext_id, array, index))