aboutsummaryrefslogtreecommitdiff
path: root/src/checker/type.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/checker/type.cpp')
-rw-r--r--src/checker/type.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/checker/type.cpp b/src/checker/type.cpp
index 34a18a6da..dded3826e 100644
--- a/src/checker/type.cpp
+++ b/src/checker/type.cpp
@@ -487,6 +487,10 @@ b32 is_type_u8(Type *t) {
}
return false;
}
+b32 is_type_array(Type *t) {
+ t = base_type(t);
+ return t->kind == Type_Array;
+}
b32 is_type_slice(Type *t) {
t = base_type(t);
return t->kind == Type_Slice;
@@ -546,6 +550,11 @@ b32 is_type_any(Type *t) {
}
+b32 is_type_indexable(Type *t) {
+ return is_type_array(t) || is_type_slice(t) || is_type_vector(t) || is_type_string(t);
+}
+
+
b32 is_type_comparable(Type *t) {
t = base_type(t);