summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--functions.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/functions.c b/functions.c
index ed0fb36..2425798 100644
--- a/functions.c
+++ b/functions.c
@@ -369,6 +369,13 @@ fnSame(Array *right)
Array *
fnUniqueMask(Array *right)
{
+ if(right->rank == 0){
+ Array *res = allocarray(AtypeInt, 1, 1);
+ res->shape[0] = 1;
+ res->intdata[0] = 1;
+ return res;
+ }
+
return rundfn(L"(⍳≢⍵)≤⊃∘⍸¨↓≡⌾⍨⌷∘⍵¨⍳≢⍵", nil, nil, nil, right);
}
@@ -620,6 +627,9 @@ fnEnlist(Array *right)
Array *
fnUnique(Array *right)
{
+ if(right->rank == 0)
+ return fnRavel(right);
+
return rundfn(L"(≠⍵)⌿⍵", nil, nil, nil, right);
}