--- a/MCDependencySorter.st Sat Aug 20 13:45:50 2011 +0200
+++ b/MCDependencySorter.st Sat Aug 20 13:45:55 2011 +0200
@@ -8,19 +8,21 @@
!
+!MCDependencySorter class methodsFor:'initialization'!
+
+new
+ ^self basicNew initialize
+! !
+
!MCDependencySorter class methodsFor:'as yet unclassified'!
items: aCollection
^ self new addAll: aCollection
!
-new
- ^ self basicNew initialize
-!
-
sortItems: aCollection
| sorter |
- sorter _ self items: aCollection.
+ sorter := self items: aCollection.
sorter externalRequirements do: [:req | sorter addProvision: req].
^ sorter orderedItems.
! !
@@ -36,16 +38,17 @@
itemsWithMissingRequirements
| items |
- items _ Set new.
+ items := Set new.
required do: [:ea | items addAll: ea].
^ items
+
! !
!MCDependencySorter methodsFor:'building'!
add: anItem
| requirements |
- requirements _ self unresolvedRequirementsFor: anItem.
+ requirements := self unresolvedRequirementsFor: anItem.
requirements isEmpty
ifTrue: [self addToOrder: anItem]
ifFalse: [self addRequirements: requirements for: anItem]
@@ -60,12 +63,13 @@
do: [:ea | self addProvision: ea]
! !
-!MCDependencySorter methodsFor:'initialize-release'!
+!MCDependencySorter methodsFor:'initialization'!
initialize
- provided _ Set new.
- required _ Dictionary new.
- orderedItems _ OrderedCollection new.
+ super initialize.
+ provided := Set new.
+ required := Dictionary new.
+ orderedItems := OrderedCollection new.
! !
!MCDependencySorter methodsFor:'private'!
@@ -73,7 +77,7 @@
addProvision: anObject
| newlySatisfied |
provided add: anObject.
- newlySatisfied _ required removeKey: anObject ifAbsent: [#()].
+ newlySatisfied := required removeKey: anObject ifAbsent: [#()].
self addAll: newlySatisfied.
!
@@ -107,5 +111,13 @@
!MCDependencySorter class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/goodies/monticello/MCDependencySorter.st,v 1.1 2006-11-22 13:12:51 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/goodies/monticello/MCDependencySorter.st,v 1.2 2011-08-20 11:45:55 cg Exp $'
+!
+
+version_CVS
+ ^ '$Header: /cvs/stx/stx/goodies/monticello/MCDependencySorter.st,v 1.2 2011-08-20 11:45:55 cg Exp $'
+!
+
+version_SVN
+ ^ '§Id: MCDependencySorter.st 7 2010-09-12 07:18:55Z vranyj1 §'
! !