MCStXPackageInfo.st
author Claus Gittinger <cg@exept.de>
Mon, 27 Aug 2012 12:26:36 +0200
changeset 572 1d700354f057
parent 534 9686e77eee0e
child 686 24cbb3e4461c
permissions -rw-r--r--
fixed: #extensionMethods

"{ Package: 'stx:goodies/monticello' }"

PackageInfo subclass:#MCStXPackageInfo
	instanceVariableNames:'projectDefinition'
	classVariableNames:''
	poolDictionaries:''
	category:'Monticello-St/X support'
!


!MCStXPackageInfo methodsFor:'accessing'!

classes

    | classes |

    classes := self projectDefinition classes.
    "/ cg: not true; the projectDefinition is part of the package; at least for st/x packages.
    "/ classes remove: self projectDefinition ifAbsent:[].
    ^classes

    "Created: / 23-08-2011 / 11:55:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified: / 02-12-2011 / 15:56:35 / cg"
!

extensionMethods
    self assert:(self projectDefinition hasAllExtensionsLoaded).

    ^self projectDefinition extensionMethods
        collect:[:mthd|
            self assert:mthd notNil.
            self
                referenceForMethod: mthd selector
                ofClass:mthd mclass
        ]

    "Created: / 23-08-2011 / 11:58:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified: / 27-08-2012 / 12:12:55 / cg"
!

projectDefinition

    projectDefinition isNil ifTrue:[
        projectDefinition := 
            (LibraryDefinition
                definitionClassForPackage: name
                createIfAbsent: true 
                projectType: nil)
    ].
    ^projectDefinition

    "Created: / 23-08-2011 / 13:37:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!

systemCategories

    | cats |
    cats := Set new.
    self classes do:[:cls|cats add: cls category].
    ^cats

    "Created: / 23-08-2011 / 13:45:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!MCStXPackageInfo class methodsFor:'documentation'!

version
    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCStXPackageInfo.st,v 1.4 2012-08-27 10:26:36 cg Exp $'
!

version_CVS
    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCStXPackageInfo.st,v 1.4 2012-08-27 10:26:36 cg Exp $'
!

version_MC
    ^ '§stx:goodies/monticello-cg.3 4e70fe70-f030-11e1-ac62-001f3bda2d09 2012-08-27T12:16:46 cg§'
! !