-
Notifications
You must be signed in to change notification settings - Fork 65
/
SpurNewSpaceSpace.class.st
59 lines (49 loc) · 1.15 KB
/
SpurNewSpaceSpace.class.st
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
Class {
#name : #SpurNewSpaceSpace,
#superclass : #VMStructType,
#instVars : [
'start',
'limit'
],
#category : #'VMMaker-SpurMemoryManager'
}
{ #category : #translation }
SpurNewSpaceSpace class >> instVarNamesAndTypesForTranslationDo: aBinaryBlock [
self allInstVarNames do:
[:ivn|
(SpurMemoryManager isNonArgumentImplicitReceiverVariableName: ivn) ifFalse:
[aBinaryBlock value: ivn value: #usqInt]]
]
{ #category : #accessing }
SpurNewSpaceSpace >> limit [
^limit
]
{ #category : #accessing }
SpurNewSpaceSpace >> limit: n [
limit := n
]
{ #category : #printing }
SpurNewSpaceSpace >> printOn: aStream [
<doNotGenerate>
super printOn: aStream.
(start notNil and: [limit notNil]) ifTrue:
[aStream nextPutAll: ' start: '; nextPutAll: start hex; nextPutAll: ' limit: '; nextPutAll: limit hex]
]
{ #category : #accessing }
SpurNewSpaceSpace >> size [
<doNotGenerate>
^ self limit - self start
]
{ #category : #accessing }
SpurNewSpaceSpace >> spaceSize [
<inline: true>
^ self limit - self start
]
{ #category : #accessing }
SpurNewSpaceSpace >> start [
^start
]
{ #category : #accessing }
SpurNewSpaceSpace >> start: n [
start := n
]