diff options
| author | Bruce Hill <bruce@bruce-hill.com> | 2025-10-01 13:05:48 -0400 |
|---|---|---|
| committer | Bruce Hill <bruce@bruce-hill.com> | 2025-10-01 13:05:48 -0400 |
| commit | 6be5430c131311106d720a4573e7509bd8b5a346 (patch) | |
| tree | 16bf786e5ff69bcc93e05b34a3253c5b6268dbdd /src/compile/optionals.c | |
| parent | fb32f766501e089953e8cb0353e60af7bc8fc042 (diff) | |
Fix up some more none cases
Diffstat (limited to 'src/compile/optionals.c')
| -rw-r--r-- | src/compile/optionals.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/compile/optionals.c b/src/compile/optionals.c index e855c73c..6ef83b5b 100644 --- a/src/compile/optionals.c +++ b/src/compile/optionals.c @@ -99,10 +99,10 @@ Text_t check_none(type_t *t, Text_t value) { else if (t->tag == ClosureType) return Texts("((", value, ").fn == NULL)"); else if (t->tag == NumType) return Texts(Match(t, NumType)->bits == TYPE_NBITS64 ? "Num$isnan(" : "Num32$isnan(", value, ")"); - else if (t->tag == ListType) return Texts("!(", value, ").has_value"); - else if (t->tag == TableType) return Texts("!(", value, ").entries.has_value"); + else if (t->tag == ListType) return Texts("((", value, ").data == NULL)"); + else if (t->tag == TableType) return Texts("((", value, ").entries.data == NULL)"); else if (t->tag == BoolType) return Texts("((", value, ") == NONE_BOOL)"); - else if (t->tag == TextType) return Texts("!(", value, ").has_value"); + else if (t->tag == TextType) return Texts("((", value, ").tag == TEXT_NONE)"); else if (t->tag == IntType || t->tag == ByteType || t->tag == StructType) return Texts("(", value, ").is_none"); else if (t->tag == EnumType) { if (enum_has_fields(t)) return Texts("((", value, ").$tag == 0)"); |
