packages/PrerequisiteCollection.st
author james
Wed, 09 Apr 2003 13:38:42 +0200
changeset 1231 2f3a15bfac92
child 1443 6dfdf336b472
permissions -rw-r--r--
initial checkin
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1231
2f3a15bfac92 initial checkin
james
parents:
diff changeset
     1
"{ Package: 'stx:libbasic3' }"
2f3a15bfac92 initial checkin
james
parents:
diff changeset
     2
2f3a15bfac92 initial checkin
james
parents:
diff changeset
     3
"{ NameSpace: Packages }"
2f3a15bfac92 initial checkin
james
parents:
diff changeset
     4
2f3a15bfac92 initial checkin
james
parents:
diff changeset
     5
Collection subclass:#PrerequisiteCollection
2f3a15bfac92 initial checkin
james
parents:
diff changeset
     6
	instanceVariableNames:'collection'
2f3a15bfac92 initial checkin
james
parents:
diff changeset
     7
	classVariableNames:''
2f3a15bfac92 initial checkin
james
parents:
diff changeset
     8
	poolDictionaries:''
2f3a15bfac92 initial checkin
james
parents:
diff changeset
     9
	category:'Package-Prerequisite'
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    10
!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    11
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    12
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    13
!PrerequisiteCollection class methodsFor:'instance creation'!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    14
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    15
new
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    16
    ^ self basicNew initialize
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    17
! !
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    18
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    19
!PrerequisiteCollection methodsFor:'adding & removing'!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    20
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    21
add:anObject 
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    22
    ^ collection add:anObject
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    23
!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    24
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    25
addFirst:anObject 
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    26
    ^ collection addFirst:anObject
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    27
!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    28
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    29
remove:anObject ifAbsent:aBlock 
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    30
    ^ collection remove:anObject ifAbsent:aBlock 
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    31
!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    32
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    33
removeIdentical:arg1 ifAbsent:aBlock 
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    34
    ^ collection removeIdentical:arg1 ifAbsent:aBlock 
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    35
!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    36
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    37
removeLast
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    38
    ^ collection removeLast
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    39
! !
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    40
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    41
!PrerequisiteCollection methodsFor:'enumerating'!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    42
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    43
do:aOneArgBlock 
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    44
    ^ collection do:aOneArgBlock
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    45
!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    46
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    47
reverseDo:aOneArgBlock 
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    48
    ^ collection reverseDo:aOneArgBlock
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    49
! !
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    50
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    51
!PrerequisiteCollection methodsFor:'evaluation'!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    52
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    53
evaluate
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    54
    self do:[:aPrerequisite |
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    55
        aPrerequisite evaluate.
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    56
    ].
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    57
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    58
! !
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    59
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    60
!PrerequisiteCollection methodsFor:'growing'!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    61
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    62
grow:anInteger 
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    63
    ^ collection grow:anInteger 
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    64
! !
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    65
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    66
!PrerequisiteCollection methodsFor:'initialize'!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    67
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    68
initialize
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    69
    collection := OrderedCollection new.
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    70
! !
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    71
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    72
!PrerequisiteCollection class methodsFor:'documentation'!
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    73
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    74
version
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    75
    ^ '$Header: /cvs/stx/stx/libbasic3/packages/PrerequisiteCollection.st,v 1.1 2003-04-09 11:38:27 james Exp $'
2f3a15bfac92 initial checkin
james
parents:
diff changeset
    76
! !