Kernel-Helpers.st 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. Smalltalk createPackage: 'Kernel-Helpers'!
  2. Trait named: #TSubclassable
  3. package: 'Kernel-Helpers'!
  4. !TSubclassable methodsFor: 'class creation'!
  5. subclass: aString
  6. "Kept for file-in compatibility."
  7. ^ self subclass: aString slots: #() package: nil
  8. !
  9. subclass: aString instanceVariableNames: anotherString
  10. "Kept for file-in compatibility."
  11. ^ self subclass: aString instanceVariableNames: anotherString package: nil
  12. !
  13. subclass: aString instanceVariableNames: aString2 category: aString3
  14. "Kept for file-in compatibility."
  15. ^ self subclass: aString instanceVariableNames: aString2 package: aString3
  16. !
  17. subclass: aString instanceVariableNames: aString2 classVariableNames: classVars poolDictionaries: pools category: aString3
  18. "Kept for file-in compatibility. ignores class variables and pools."
  19. ^ self subclass: aString instanceVariableNames: aString2 package: aString3
  20. !
  21. subclass: aString instanceVariableNames: aString2 package: aString3
  22. "Kept for file-in compatibility."
  23. ^ self subclass: aString slots: (self slotsFromInstanceVariablesString: aString2) package: aString3
  24. !
  25. subclass: aString slots: aCollection
  26. "Kept for file-in compatibility."
  27. ^ self subclass: aString slots: aCollection package: nil
  28. !
  29. subclass: aString slots: aCollection classVariables: anObject package: anotherString
  30. "Kept for file-in compatibility. ignores class variables."
  31. ^ ClassBuilder new
  32. superclass: self subclass: aString slots: aCollection package: anotherString
  33. !
  34. subclass: aString slots: aCollection classVariables: anObject poolDictionaries: anotherObject package: anotherString
  35. "Kept for file-in compatibility. ignores class variables and pools."
  36. ^ ClassBuilder new
  37. superclass: self subclass: aString slots: aCollection package: anotherString
  38. !
  39. subclass: aString slots: aCollection package: anotherString
  40. ^ ClassBuilder new
  41. superclass: self subclass: aString slots: aCollection package: anotherString
  42. !
  43. subclass: aString uses: aTraitCompositionDescription
  44. "Kept for file-in compatibility."
  45. ^ self subclass: aString uses: aTraitCompositionDescription slots: #() package: nil
  46. !
  47. subclass: aString uses: aTraitCompositionDescription instanceVariableNames: anotherString
  48. "Kept for file-in compatibility."
  49. ^ self subclass: aString uses: aTraitCompositionDescription instanceVariableNames: anotherString package: nil
  50. !
  51. subclass: aString uses: aTraitCompositionDescription instanceVariableNames: aString2 category: aString3
  52. "Kept for file-in compatibility."
  53. ^ self subclass: aString uses: aTraitCompositionDescription instanceVariableNames: aString2 package: aString3
  54. !
  55. subclass: aString uses: aTraitCompositionDescription instanceVariableNames: aString2 classVariableNames: classVars poolDictionaries: pools category: aString3
  56. "Kept for file-in compatibility. ignores class variables and pools."
  57. ^ self subclass: aString uses: aTraitCompositionDescription instanceVariableNames: aString2 package: aString3
  58. !
  59. subclass: aString uses: aTraitCompositionDescription instanceVariableNames: aString2 package: aString3
  60. "Kept for file-in compatibility."
  61. ^ self subclass: aString uses: aTraitCompositionDescription slots: (self slotsFromInstanceVariablesString: aString2) package: aString3
  62. !
  63. subclass: aString uses: aTraitCompositionDescription slots: aCollection
  64. "Kept for file-in compatibility."
  65. ^ self subclass: aString uses: aTraitCompositionDescription slots: aCollection package: nil
  66. !
  67. subclass: aString uses: aTraitCompositionDescription slots: aCollection package: aString3
  68. | cls |
  69. cls := self subclass: aString slots: aCollection package: aString3.
  70. cls setTraitComposition: aTraitCompositionDescription asTraitComposition.
  71. ^ cls
  72. ! !