diff options
author | Leo Tenenbaum <pommicket@gmail.com> | 2020-05-08 13:58:17 -0400 |
---|---|---|
committer | Leo Tenenbaum <pommicket@gmail.com> | 2020-05-08 13:58:17 -0400 |
commit | 8b4a6f6298fadf92a4f9a5d9879225ba7d27270d (patch) | |
tree | fa640c60c6b8be226da1a8797c319218d3ef31d1 /tests/std/arr.toc | |
parent | 38d57cdce42115fac4eb48bb441ac31f0fd81a7a (diff) |
got double include to work
Diffstat (limited to 'tests/std/arr.toc')
-rw-r--r-- | tests/std/arr.toc | 29 |
1 files changed, 0 insertions, 29 deletions
diff --git a/tests/std/arr.toc b/tests/std/arr.toc deleted file mode 100644 index a2d202b..0000000 --- a/tests/std/arr.toc +++ /dev/null @@ -1,29 +0,0 @@ -// this could be made quite a bit faster with realloc - -Arr ::= struct (t :: Type) { - data : []t; - cap : int; -}; - -resv ::= fn(t ::=, a : &Arr(t), n: int) { - if a.cap >= n { - return; - } - a.cap = n; - new_data := new(t, a.cap); - new_data.len = a.data.len; - for x, i := &new_data { - *x = a.data[i]; - } - a.data = new_data; -}; - -add ::= fn(t ::=, a : &Arr(t), x : t) { - if a.data.len >= a.cap { - resv(a, a.cap * 2 + 2); - } - a.data.len += 1; - a.data[a.data.len-1] = x; -}; - -len ::= fn(t ::=, a : Arr(t)) int { a.data.len }; |