Rev 7973 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7973 | Rev 8330 | ||
---|---|---|---|
Line 14... | Line 14... | ||
14 | dword buf_size; |
14 | dword buf_size; |
15 | unsigned count; |
15 | unsigned count; |
16 | void alloc(); |
16 | void alloc(); |
17 | void add(); |
17 | void add(); |
18 | dword get(); |
18 | dword get(); |
19 | void set(); |
19 | dword set(); |
20 | void swap(); |
20 | void swap(); |
21 | dword len(); |
21 | dword len(); |
22 | dword get_last(); |
22 | dword get_last(); |
23 | void pop(); |
23 | void pop(); |
24 | void drop(); |
24 | void drop(); |
Line 45... | Line 45... | ||
45 | if (pos<0) || (pos>=count) return 0; |
45 | if (pos<0) || (pos>=count) return 0; |
46 | return ESDWORD[pos * sizeof(dword) + buf]; |
46 | return ESDWORD[pos * sizeof(dword) + buf]; |
47 | } |
47 | } |
Line 48... | Line 48... | ||
48 | 48 | ||
49 | 49 | ||
50 | :void collection_int::set(dword pos, _in) { |
50 | :dword collection_int::set(dword pos, _in) { |
51 | while (pos >= count) add(0); |
51 | while (pos >= count) add(0); |
- | 52 | EAX = pos * sizeof(dword) + buf; |
|
52 | EAX = pos * sizeof(dword) + buf; |
53 | ESDWORD[EAX] = _in; |
Line 53... | Line 54... | ||
53 | ESDWORD[EAX] = _in; |
54 | return ESDWORD[EAX]; |
54 | } |
55 | } |
55 | 56 |