"{ Package: 'stx:goodies/builder/reports' }"
"{ NameSpace: Builder }"
ReportSourceInfo subclass:#ReportClassSourceInfo
instanceVariableNames:'klass'
classVariableNames:''
poolDictionaries:''
category:'Builder-Reports-Utils'
!
!ReportClassSourceInfo methodsFor:'initialization'!
initializeWithPackage:aSymbolOrString class:aClass
package := aSymbolOrString asSymbol.
klass := aClass theNonMetaclass.
self setup.
"Created: / 29-07-2013 / 18:37:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!ReportClassSourceInfo methodsFor:'utilities'!
fileOutOn:aStream
| filter |
"JV@2012-02-02: Do not fileout extensionVersion methods, that one is filed out
when extensions are filed out."
(klass inheritsFrom: ProjectDefinition) ifTrue:[
filter := [:m| m package = package
and:[ (AbstractSourceCodeManager isExtensionsVersionMethodSelector:m selector) not
"m selector ~~ self nameOfVersionMethodForExtensions"]
]
] ifFalse:[
filter := [:mth | mth package = package ].
].
klass fileOutOn:aStream
withTimeStamp:false
withInitialize:true
withDefinition:true
methodFilter:filter.
"Created: / 01-03-2013 / 17:51:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 29-07-2013 / 19:09:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
validate
| file |
file := (Smalltalk getPackageDirectoryForPackage: klass package) / ((Smalltalk fileNameForClass: klass) , '.st').
^ self validateAgainstReference: file
"Modified: / 29-07-2013 / 14:54:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!ReportClassSourceInfo class methodsFor:'documentation'!
version
^ '$Header$'
!
version_CVS
^ '$Header$'
! !