forked from dolphinsmalltalk/DolphinVM
-
Notifications
You must be signed in to change notification settings - Fork 0
/
STCollection.h
48 lines (35 loc) · 1.07 KB
/
STCollection.h
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
/******************************************************************************
File: STCollection.h
Description:
VM representation of Smalltalk abstract collection classes.
N.B. Some of the classes here defined are well known to the VM, and must not
be modified in the image. Note also that these classes may also have
a representation in the assembler modules (so see istasm.inc)
******************************************************************************/
#ifndef _IST_STCOLLECTION_H_
#define _IST_STCOLLECTION_H_
#include "STObject.h"
class Collection //: public Object
{
public:
enum { FixedSize = 0 }; // FixedSize does not include Header
};
class SequenceableCollection : public Collection
{
};
class ArrayedCollection : public SequenceableCollection
{
};
#ifdef _AFX
#pragma warning (disable : 4200)
class SortedCollection : public SequenceableCollection
{
public:
Oop m_firstIndex;
Oop m_lastIndex;
Oop m_sortBlock;
Oop m_elements[];
enum {FirstIndexIndex=Collection::FixedSize, LastIndexIndex, SortBlockIndex, FixedSize};
};
#endif
#endif // EOF