aboutsummaryrefslogtreecommitdiff
path: root/compile.c
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2024-03-26 14:59:52 -0400
committerBruce Hill <bruce@bruce-hill.com>2024-03-26 14:59:52 -0400
commitd94053ca7768037016cbcacc4cadf843dad1bea6 (patch)
treecfca6501f96d46c15adb40651de8213ee83d0f31 /compile.c
parent135e23094c42b33acdd05dd522bbe0fd691b9eee (diff)
Add array:reversed()
Diffstat (limited to 'compile.c')
-rw-r--r--compile.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/compile.c b/compile.c
index 3bb8151b..6af4bf1d 100644
--- a/compile.c
+++ b/compile.c
@@ -1493,6 +1493,9 @@ CORD compile(env_t *env, ast_t *ast)
.next=new(arg_t, .name="stride", .type=Type(IntType, .bits=64), .default_val=FakeAST(Int, .i=1, .bits=64))));
return CORD_all("Array__slice(", self, ", ", compile_arguments(env, ast, arg_spec, call->args), ", ",
compile_type_info(env, self_value_t), ")");
+ } else if (streq(call->name, "reversed")) {
+ CORD self = compile_to_pointer_depth(env, call->self, 0, false);
+ return CORD_all("Array__reversed(", self, ")");
} else code_err(ast, "There is no '%s' method for arrays", call->name);
}
case TableType: {