Files
mercury/tests/hard_coded/array2d_from_array.exp
Julien Fischer d520113cdb Conversion from array/1 to array2d/1.
Add a function that uses an array/1 value to construct an array2d/1 value
without allocating new memory for the element storage or traversing the
elements.

library/array2d.m:
    Add a function that creates an array2d/1 from an array/1 value

    Fix minor documentation issues:
    - re-order the declarations so that of from_lists/1 is directly below
      that of array2d/1.

    - s/a/an/ in a few spots.

    - add missing apostrophes.

NEWS:
    Announce the new function.

tests/hard_coded/Mmakefile:
tests/hard_coded/array2d_from_array.{m,exp}:
    Add a test case.
2018-11-30 04:57:29 +00:00

46 lines
972 B
Plaintext

------FROM ARRAY------
Array = array([])
M = -1
N = -1
EXCEPTION: "array2d.from_array: bounds must be non-negative"
------FROM ARRAY------
Array = array([])
M = 0
N = -1
EXCEPTION: "array2d.from_array: bounds must be non-negative"
------FROM ARRAY------
Array = array([])
M = -1
N = 0
EXCEPTION: "array2d.from_array: bounds must be non-negative"
------FROM ARRAY------
Array = array([])
M = 2
N = 2
EXCEPTION: "array2d.from_array: too few elements"
------FROM ARRAY------
Array = array([1, 2, 3, 4, 5])
M = 2
N = 2
EXCEPTION: "array2d.from_array: too many elements"
------FROM ARRAY------
Array = array([])
M = 0
N = 0
Array2d = array2d(0, 0, array([]))
------FROM ARRAY------
Array = array([1])
M = 1
N = 1
Array2d = array2d(1, 1, array([1]))
------FROM ARRAY------
Array = array([1, 2, 3, 4])
M = 2
N = 2
Array2d = array2d(2, 2, array([1, 2, 3, 4]))
------FROM ARRAY------
Array = array([1, 2, 3, 4, 5, 6])
M = 2
N = 3
Array2d = array2d(2, 3, array([1, 2, 3, 4, 5, 6]))