aboutsummaryrefslogtreecommitdiff
path: root/types.c
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2025-03-10 12:42:45 -0400
committerBruce Hill <bruce@bruce-hill.com>2025-03-10 12:42:45 -0400
commit39dd1ca27da9e9d88ee59565df99ee281e1b3632 (patch)
tree107558459d134c052e5e912dceca03d0a0c26aa3 /types.c
parent806e0d0554a8f619cb5b835e535f5f1022543c1a (diff)
Add `convert` keyword for defining conversions
Diffstat (limited to 'types.c')
-rw-r--r--types.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/types.c b/types.c
index c8cb4e33..c943eb85 100644
--- a/types.c
+++ b/types.c
@@ -105,6 +105,16 @@ CORD type_to_cord(type_t *t) {
}
}
+PUREFUNC const char *get_type_name(type_t *t)
+{
+ switch (t->tag) {
+ case TextType: return Match(t, TextType)->lang;
+ case StructType: return Match(t, StructType)->name;
+ case EnumType: return Match(t, EnumType)->name;
+ default: return NULL;
+ }
+}
+
int printf_pointer_size(const struct printf_info *info, size_t n, int argtypes[n], int sizes[n])
{
if (n < 1) return -1;