Skip to content

Commit 8365944

Browse files
committed
Move allChildren method from inspector extension to core package
1 parent 3b5f5f2 commit 8365944

2 files changed

Lines changed: 17 additions & 17 deletions

File tree

src/Containers-AVL-Tree-Inspector/CTAVLTree.extension.st

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,5 @@
11
Extension { #name : 'CTAVLTree' }
22

3-
{ #category : '*Containers-AVL-Tree-Inspector' }
4-
CTAVLTree >> allChildren [
5-
| allNodes queue currentNode |
6-
allNodes := OrderedCollection new.
7-
self root isNilNode ifTrue: [ ^ allNodes ].
8-
9-
queue := OrderedCollection with: self root.
10-
[ queue isNotEmpty ] whileTrue: [
11-
currentNode := queue removeFirst.
12-
allNodes add: currentNode.
13-
currentNode left isNilNode ifFalse: [ queue add: currentNode left ].
14-
currentNode right isNilNode ifFalse: [ queue add: currentNode right ]
15-
].
16-
17-
^ allNodes
18-
]
19-
203
{ #category : '*Containers-AVL-Tree-Inspector' }
214
CTAVLTree >> inspectorCanvas: aBuilder [
225
<inspectorPresentationOrder: 90 title: 'AVL'>

src/Containers-AVL-Tree/CTAVLTree.class.st

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,23 @@ CTAVLTree >> addAll: aCollection [
3636
^ aCollection
3737
]
3838

39+
{ #category : 'accessing' }
40+
CTAVLTree >> allChildren [
41+
| allNodes queue currentNode |
42+
allNodes := OrderedCollection new.
43+
self root isNilNode ifTrue: [ ^ allNodes ].
44+
45+
queue := OrderedCollection with: self root.
46+
[ queue isNotEmpty ] whileTrue: [
47+
currentNode := queue removeFirst.
48+
allNodes add: currentNode.
49+
currentNode left isNilNode ifFalse: [ queue add: currentNode left ].
50+
currentNode right isNilNode ifFalse: [ queue add: currentNode right ]
51+
].
52+
53+
^ allNodes
54+
]
55+
3956
{ #category : 'enumerating' }
4057
CTAVLTree >> anySatisfy: aBlock [
4158

0 commit comments

Comments
 (0)