Behavior.st
branchjv
changeset 17955 f5ee690b1a27
parent 17944 084a2c804b87
child 17966 8b5df02e171f
equal deleted inserted replaced
17954:dc18846aa7b2 17955:f5ee690b1a27
  4664 
  4664 
  4665 	^ self whichSelectorsWrite: instVarName
  4665 	^ self whichSelectorsWrite: instVarName
  4666 !
  4666 !
  4667 
  4667 
  4668 whichSelectorsRead: instVarName
  4668 whichSelectorsRead: instVarName
  4669 	"Answer a set of selectors whose methods read the argument, instVarName,
  4669         "Answer a set of selectors whose methods read the argument, instVarName,
  4670 	as a named instance variable."
  4670         as a named instance variable."
  4671 
  4671 
  4672 	| instVarIndex methodDict|
  4672 "/        | instVarIndex methodDict|
  4673 	instVarIndex := self allInstVarNames indexOf: instVarName ifAbsent: [^Set new].
  4673 "/        instVarIndex := self allInstVarNames indexOf: instVarName ifAbsent: [^Set new].
  4674 	methodDict := self methodDictionary.
  4674 "/        methodDict := self methodDictionary.
  4675 	^methodDict keys select: [:sel | (methodDict at: sel)
  4675 "/        ^methodDict keys select: [:sel | (methodDict at: sel)
  4676 			readsField: instVarIndex]
  4676 "/                        readsField: instVarIndex]
       
  4677 
       
  4678         | methodDict |
       
  4679         methodDict := self methodDictionary.
       
  4680         ^ methodDict keys 
       
  4681             select: [:sel | (methodDict at: sel) readsInstVar: instVarName]
       
  4682 
       
  4683     "Modified: / 23-07-2012 / 11:22:04 / cg"
  4677 !
  4684 !
  4678 
  4685 
  4679 whichSelectorsReferTo:someLiteralConstant
  4686 whichSelectorsReferTo:someLiteralConstant
  4680     "return a collection of selectors of methods which refer to the argument.
  4687     "return a collection of selectors of methods which refer to the argument.
  4681      Search the literal arrays of my methods to do this."
  4688      Search the literal arrays of my methods to do this."
  4727 
  4734 
  4728     "Modified: / 4.2.2000 / 00:41:10 / cg"
  4735     "Modified: / 4.2.2000 / 00:41:10 / cg"
  4729 !
  4736 !
  4730 
  4737 
  4731 whichSelectorsWrite: instVarName
  4738 whichSelectorsWrite: instVarName
  4732 	"Answer a set of selectors whose methods write the argument, instVarName,
  4739         "Answer a set of selectors whose methods write the argument, instVarName,
  4733 	as a named instance variable."
  4740         as a named instance variable."
  4734 
  4741 
  4735 	| instVarIndex methodDict |
  4742 "/        | instVarIndex methodDict |
  4736 	instVarIndex := self allInstVarNames indexOf: instVarName ifAbsent: [^Set new].
  4743 "/        instVarIndex := self allInstVarNames indexOf: instVarName ifAbsent: [^Set new].
  4737 	methodDict := self methodDictionary.
  4744 "/        methodDict := self methodDictionary.
  4738 	^methodDict keys select: [:sel | (methodDict at: sel)
  4745 "/        ^methodDict keys select: [:sel | (methodDict at: sel)
  4739 			writesField: instVarIndex]
  4746 "/                        writesField: instVarIndex]
       
  4747         | methodDict |
       
  4748         methodDict := self methodDictionary.
       
  4749         ^ methodDict keys 
       
  4750             select: [:sel | (methodDict at: sel) writesInstVar: instVarName]
       
  4751 
       
  4752     "Modified: / 23-07-2012 / 11:21:17 / cg"
  4740 ! !
  4753 ! !
  4741 
  4754 
  4742 !Behavior methodsFor:'snapshots'!
  4755 !Behavior methodsFor:'snapshots'!
  4743 
  4756 
  4744 postSnapshot
  4757 postSnapshot
  4775 ! !
  4788 ! !
  4776 
  4789 
  4777 !Behavior class methodsFor:'documentation'!
  4790 !Behavior class methodsFor:'documentation'!
  4778 
  4791 
  4779 version
  4792 version
  4780     ^ '$Header: /cvs/stx/stx/libbasic/Behavior.st,v 1.320 2012/06/01 21:37:36 cg Exp $'
  4793     ^ '$Header: /cvs/stx/stx/libbasic/Behavior.st,v 1.321 2012/07/23 09:38:41 cg Exp $'
  4781 !
  4794 !
  4782 
  4795 
  4783 version_CVS
  4796 version_CVS
  4784     ^ '§Header: /cvs/stx/stx/libbasic/Behavior.st,v 1.320 2012/06/01 21:37:36 cg Exp §'
  4797     ^ '§Header: /cvs/stx/stx/libbasic/Behavior.st,v 1.321 2012/07/23 09:38:41 cg Exp §'
  4785 !
  4798 !
  4786 
  4799 
  4787 version_SVN
  4800 version_SVN
  4788     ^ '$Id: Behavior.st 10814 2012-06-05 13:35:12Z vranyj1 $'
  4801     ^ '$Id: Behavior.st 10829 2012-07-25 08:45:15Z vranyj1 $'
  4789 ! !
  4802 ! !