Skip to content

Commit 510bb93

Browse files
committed
Add missing extension methods
1 parent 3b1bc7a commit 510bb93

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
Extension { #name : #RBAssignmentNode }
2+
3+
{ #category : #'*Chanel' }
4+
RBAssignmentNode >> removeFromTree [
5+
self parent removeNode: self
6+
]
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
Extension { #name : #RBTemporaryNode }
2+
3+
{ #category : #'*Chanel' }
4+
RBTemporaryNode >> declaringScope [
5+
| ancestor |
6+
ancestor := self parent.
7+
[ ancestor isNil ] whileFalse: [ (ancestor temporaries anySatisfy: [ :each | each name = self name ]) ifTrue: [ ^ ancestor ] ].
8+
self error: 'Undeclared temporary'
9+
]
10+
11+
{ #category : #'*Chanel' }
12+
RBTemporaryNode >> isReadAtLeastOnce [
13+
^ self declaringScope allChildren noneSatisfy: [ :node | node isTemp and: [ node name = self name and: [ node isRead ] ] ]
14+
]

0 commit comments

Comments
 (0)