CypressMethod.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 17 Sep 2012 18:05:30 +0000
changeset 14 d5b81c30785e
parent 13 f90704544ca0
child 15 31a33727c629
permissions -rw-r--r--
- CypressWriter class definition added:8 methods changed: #documentation - stx_goodies_cypress changed: #classNamesAndAttributes #extensionMethodNames #preRequisites - CypressModel added: #writeTo:using: - CypressMethod added: #category #source #writeTo:using: - CypressAbstractWriter added:30 methods category of: - CypressPackage added: #comment #comment: #definition #writeTo:using: - CypressRepository added:5 methods changed: #directory: category of: - CypressClass added: #comment #comment: #writeTo:using: - extensions ...

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

CypressModel subclass:#CypressMethod
	instanceVariableNames:'klass meta category source'
	classVariableNames:''
	poolDictionaries:''
	category:'Cypress-New-Model'
!


!CypressMethod class methodsFor:'instance creation'!

fromFile: aStringOrFilename
    "Reads a CypressMethod from given file"
    ^self new initializeFromFile: aStringOrFilename

    "Created: / 13-09-2012 / 15:36:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!

fromMethod: aMethod
    "Returns a Cypress method for given (real) method"
    ^self new initializeFromMethod: aMethod

    "Created: / 11-09-2012 / 00:03:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!CypressMethod methodsFor:'accessing'!

category
    ^ category
!

klass
    ^ klass
!

meta
    ^ meta
!

package
    "Returns a CypressPackage which the receiver belongs to"

    ^ self shouldImplement
!

selector
    ^self name

    "Created: / 11-09-2012 / 11:18:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!

source
    ^ source
! !

!CypressMethod methodsFor:'initialization'!

initializeFromFile: aStringOrFilename
    self readFrom: aStringOrFilename

    "Created: / 13-09-2012 / 15:36:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!

initializeFromMethod: aMethod
    name := aMethod selector.
    klass := aMethod mclass name.
    meta := aMethod mclass isMetaclass.
    category := aMethod category.
    source := aMethod source.

    "Created: / 11-09-2012 / 00:05:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!CypressMethod class methodsFor:'documentation'!

version_SVN
    ^ '$Id::                                                                                                                        $'
! !