From e0d8a61bdc1cc15238bc1aa30510c7ee2db4feb8 Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Sun, 27 Dec 2020 18:35:57 -0500 Subject: Validate right operand result for rank and depth operators --- src/r.bqn | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/r.bqn b/src/r.bqn index d387af4e..a333b97c 100644 --- a/src/r.bqn +++ b/src/r.bqn @@ -356,7 +356,14 @@ Range←{ IsArray◶I‿M 𝕩 } -_ranks ← {⟨2⟩⊘⟨1,0⟩((⊣-1+|)˜⟜≠⊑¨<∘⊢)⥊∘𝔽} +ValidateRanks←{ + "⎉ or ⚇: 𝔽 result must have rank at most 1" ! 1≥=𝕩 + 𝕩↩⥊𝕩 + "⎉ or ⚇: 𝔽 result must have 1 to 3 elements" ! (1⊸≤∧≤⟜3)≠𝕩 + "⎉ or ⚇: 𝔽 result must consist of integers" ! ∧´Int⌜𝕩 + 𝕩 +} +_ranks ← {⟨2⟩⊘⟨1,0⟩ ((⊣-1+|)˜⟜≠⊑¨<∘⊢) ValidateRanks∘𝔽} _depthOp_←{ neg←0>n←𝕨𝔾_ranks𝕩 ⋄ F←𝔽 _d←{ -- cgit v1.2.3