File: Vector.hs

package info (click to toggle)
bali-phy 3.4%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 10,608 kB
  • sloc: cpp: 67,094; xml: 4,074; perl: 3,715; haskell: 1,861; yacc: 1,067; python: 555; lex: 528; sh: 259; makefile: 20
file content (25 lines) | stat: -rw-r--r-- 956 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{-# LANGUAGE NoImplicitPrelude #-}
module Foreign.Vector where

import Compiler.Num
import Data.Ord

builtin builtin_set_vector_index 3 "set_vector_index" "Vector"
builtin builtin_new_vector 1 "new_vector" "Vector"
builtin get_vector_index 2 "get_vector_index" "Vector"
builtin vector_size 1 "vector_size" "Vector"
builtin sizeOfVectorUnsigned 1 "sizeOfVectorUnsigned" "Vector"
builtin sizeOfVectorInt 1 "sizeOfVectorInt" "Vector"
builtin getStringElement 2 "getStringElement" "Vector"
builtin sizeOfString 1 "sizeOfString" "Vector"
builtin builtinNewString 1 "NewString" "Vector"
builtin builtinSetStringIndexInt 3 "SetStringIndex" "Vector"

list_from_vector' v s i = if (i<s) then (get_vector_index v i):list_from_vector' v s (i+1) else []

list_from_vector v = list_from_vector' v (vector_size v) 0

listFromString' v s i = if (i<s) then (getStringElement v i):listFromString' v s (i+1) else []

listFromString v = listFromString' v (sizeOfString v) 0