home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 018.lha / prelude / array.st < prev    next >
Text File  |  1986-10-19  |  696b  |  32 lines

  1. Class Array :ArrayedCollection
  2. [
  3.     new: aValue
  4.         ^ <primitive 114 aValue>
  5. |
  6.     at: aNumber
  7.         ( (aNumber < 1) or: [aNumber > <primitive 4 self> ] )
  8.             ifTrue: [ self error: 'index error'. ^nil ].
  9.         ^ <primitive 111 self aNumber >
  10. |
  11.     at: aNumber put: aValue
  12.         ( (aNumber < 1) or: [aNumber > <primitive 4 self> ] )
  13.             ifTrue: [ self error: 'index error'. ^nil ].
  14.         <primitive 112 self aNumber aValue >.
  15.         ^ aValue
  16. |
  17.     grow: newObject
  18.         ^ <primitive 113 self newObject>
  19. |
  20.     printString        | value i |
  21.         value <- ')'.
  22.         i <- <primitive 4 self>.
  23.         [i > 0] whileTrue: 
  24.             [ value <- <primitive 111 self i>  printString ,
  25.                     ' ', value.
  26.                     i <- i - 1].
  27.         ^ '#( ' , value
  28. |
  29.     size
  30.         ^ <primitive 4 self>
  31. ]
  32.