File: Array.hi

package info (click to toggle)
nhc98 1.16-15
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 62,544 kB
  • ctags: 103,012
  • sloc: ansic: 831,077; haskell: 60,111; java: 4,116; makefile: 3,045; sh: 2,183; cpp: 212
file content (123 lines) | stat: -rw-r--r-- 3,738 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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
interface Array where {
infixl  9 !;
infixl  9 //;

{-# NEED #-}
instance Ix.Ix Prelude.Integer;

{-# NEED #-}
instance Ix.Ix Prelude.Bool;

{-# NEED #-}
instance Ix.Ix Prelude.Int;

{-# NEED #-}
instance Ix.Ix Prelude.Char;

{-# NEED #-}
instance Ix.Ix Prelude.Ordering;

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b) => Ix.Ix (a,b);

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b,Ix.Ix c) => Ix.Ix (a,b,c);

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b,Ix.Ix c,Ix.Ix d) => Ix.Ix (a,b,c,d);

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b,Ix.Ix c,Ix.Ix d,Ix.Ix e) => Ix.Ix (a,b,c,d,e);

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b,Ix.Ix c,Ix.Ix d,Ix.Ix e,Ix.Ix f) => Ix.Ix (a,b,c,d,e,f);

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b,Ix.Ix c,Ix.Ix d,Ix.Ix e,Ix.Ix f,Ix.Ix g) => Ix.Ix (a,b,c,d,e,f,g);

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b,Ix.Ix c,Ix.Ix d,Ix.Ix e,Ix.Ix f,Ix.Ix g,Ix.Ix h) => Ix.Ix (a,b,c,d,e,f,g,h);

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b,Ix.Ix c,Ix.Ix d,Ix.Ix e,Ix.Ix f,Ix.Ix g,Ix.Ix h,Ix.Ix i) => Ix.Ix (a,b,c,d,e,f,g,h,i);

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b,Ix.Ix c,Ix.Ix d,Ix.Ix e,Ix.Ix f,Ix.Ix g,Ix.Ix h,Ix.Ix i,Ix.Ix j) => Ix.Ix (a,b,c,d,e,f,g,h,i,j);

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b,Ix.Ix c,Ix.Ix d,Ix.Ix e,Ix.Ix f,Ix.Ix g,Ix.Ix h,Ix.Ix i,Ix.Ix j,Ix.Ix k) => Ix.Ix (a,b,c,d,e,f,g,h,i,j,k);

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b,Ix.Ix c,Ix.Ix d,Ix.Ix e,Ix.Ix f,Ix.Ix g,Ix.Ix h,Ix.Ix i,Ix.Ix j,Ix.Ix k,Ix.Ix l) => Ix.Ix (a,b,c,d,e,f,g,h,i,j,k,l);

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b,Ix.Ix c,Ix.Ix d,Ix.Ix e,Ix.Ix f,Ix.Ix g,Ix.Ix h,Ix.Ix i,Ix.Ix j,Ix.Ix k,Ix.Ix l,Ix.Ix m) => Ix.Ix (a,b,c,d,e,f,g,h,i,j,k,l,m);

{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b,Ix.Ix c,Ix.Ix d,Ix.Ix e,Ix.Ix f,Ix.Ix g,Ix.Ix h,Ix.Ix i,Ix.Ix j,Ix.Ix k,Ix.Ix l,Ix.Ix m,Ix.Ix n,Ix.Ix o) => Ix.Ix (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o);

{-# NEED #-}
instance (Ix.Ix a) => Prelude.Functor (Array a);

{-# NEED #-}
instance (Ix.Ix a,Prelude.Read a,Prelude.Read b) => Prelude.Read (Array a b);

{-# NEED #-}
instance (Ix.Ix a,Prelude.Ord b) => Prelude.Ord (Array a b);

{-# NEED #-}
instance (Ix.Ix a,Prelude.Show a,Prelude.Show b) => Prelude.Show (Array a b);

{-# NEED #-}
instance (Ix.Ix a,Prelude.Eq b) => Prelude.Eq (Array a b);
interface ! Array
{-# NEED listArray #-}
listArray{-# 2 #-}::(Ix.Ix a) => ((a,a) -> ([b] -> (Array a b)));

{-# NEED accumArray #-}
accumArray{-# 3 #-}::(Ix.Ix c) => ((a -> (b -> a)) -> (a -> ((c,c) -> ([(c,b)] -> (Array c a)))));

{-# NEED (!) #-}
(!){-# 2 #-}::(Ix.Ix a) => ((Array a b) -> (a -> b));

{-# NEED elems #-}
elems{-# 1 #-}::(Ix.Ix a) => ((Array a b) -> [b]);

{-# NEED indices #-}
indices{-# 0 #-}::(Ix.Ix a) => ((Array a b) -> [a]);

{-# NEED bounds #-}
bounds{-# 1 #-}::(Ix.Ix a) => ((Array a b) -> (a,a));

{-# NEED assocs #-}
assocs{-# 1 #-}::(Ix.Ix a) => ((Array a b) -> [(a,b)]);

{-# NEED ixmap #-}
ixmap{-# 3 #-}::(Ix.Ix a,Ix.Ix b) => ((a,a) -> ((a -> b) -> ((Array b c) -> (Array a c))));

{-# NEED array #-}
array{-# 2 #-}::(Ix.Ix a) => ((a,a) -> ([(a,b)] -> (Array a b)));

{-# NEED accum #-}
accum{-# 1 #-}::(Ix.Ix c) => ((a -> (b -> a)) -> ((Array c a) -> ([(c,b)] -> (Array c a))));

{-# NEED (//) #-}
(//){-# 2 #-}::(Ix.Ix a) => ((Array a b) -> ([(a,b)] -> (Array a b)));

{-# NEED Array #-}
data (Ix.Ix a) => Array a b;
interface ! Ix
{-# NEED _tupleIndex #-}
_tupleIndex{-# 4 #-}::(Ix a) => (a -> (a -> (a -> (Prelude.Int -> Prelude.Int))));

{-# NEED _tupleRange #-}
_tupleRange{-# 3 #-}::(Ix a) => (a -> (a -> ([(a -> b)] -> [b])));

{-# NEED {Ix range index inRange rangeSize} #-}
class (Prelude.Ord a) => Ix a where {
  range{-# 1 #-}::((a,a) -> [a]);
  index{-# 2 #-}::((a,a) -> (a -> Prelude.Int));
  inRange{-# 2 #-}::((a,a) -> (a -> Prelude.Bool));
  rangeSize{-# 1 #-}::((a,a) -> Prelude.Int);
};
}