aboutsummaryrefslogtreecommitdiffstats
path: root/cppawk-include
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2022-04-04 07:18:22 -0700
committerKaz Kylheku <kaz@kylheku.com>2022-04-04 07:18:22 -0700
commit42eed7c0f54afd5c8c688f418a482bc30ec0de89 (patch)
tree69f140d55b6edcee1250133c197ab68da15e3b6b /cppawk-include
parent0b1a7c1e2fa96187921cc618971ac8dcf3c2ef00 (diff)
downloadcppawk-42eed7c0f54afd5c8c688f418a482bc30ec0de89.tar.gz
cppawk-42eed7c0f54afd5c8c688f418a482bc30ec0de89.tar.bz2
cppawk-42eed7c0f54afd5c8c688f418a482bc30ec0de89.zip
New accessors stringp and symbolp.
Diffstat (limited to 'cppawk-include')
-rw-r--r--cppawk-include/cons-priv.h12
-rw-r--r--cppawk-include/cons.h2
2 files changed, 14 insertions, 0 deletions
diff --git a/cppawk-include/cons-priv.h b/cppawk-include/cons-priv.h
index d9a8e28..0dd794d 100644
--- a/cppawk-include/cons-priv.h
+++ b/cppawk-include/cons-priv.h
@@ -159,6 +159,18 @@ function __numberp(__obj)
}
#define __numberp(obj) (obj != "" && ((obj) == 0 || (obj) + 0 != 0))
+function __stringp(__obj)
+{
+ return __typecode(obj) == "T"
+}
+#define __stringp(obj) (substr(obj, 1, 1) == "T")
+
+function __symbolp(__obj)
+{
+ return __typecode(obj) ~ /^S?$/
+}
+#define __symbolp(obj) (substr(obj, 1, 1) ~ /^S?$/)
+
function __box(__raw,
__case_temps)
{
diff --git a/cppawk-include/cons.h b/cppawk-include/cons.h
index 1879e18..57e23c6 100644
--- a/cppawk-include/cons.h
+++ b/cppawk-include/cons.h
@@ -53,6 +53,8 @@
#define false __false
#define true __true
#define numberp __numberp
+#define stringp __stringp
+#define symbolp __symbolp
#define box __box
#define unbox __unbox
#define box_sym __box_sym