SystemBrowser.st
changeset 12844 2a189ba77e75
parent 12837 80c40ce2cd56
child 12866 dfc55f180f52
equal deleted inserted replaced
12843:481f4ad06396 12844:2a189ba77e75
  3377 
  3377 
  3378     "Modified: / 31.10.1997 / 15:42:05 / cg"
  3378     "Modified: / 31.10.1997 / 15:42:05 / cg"
  3379 !
  3379 !
  3380 
  3380 
  3381 browseReferendsOfUnboundGlobalsWithTitle:title ifNone:actionIfNone
  3381 browseReferendsOfUnboundGlobalsWithTitle:title ifNone:actionIfNone
  3382     "launch a browser for all methods referencing an unbound global.
  3382     "launch a browser for all methods referencing an unbound global."
  3383     "
  3383 
  3384 
  3384     |searchBlock browser|
  3385     |globalsPlainName searchBlock browser|
       
  3386 
  3385 
  3387     searchBlock := [:cls :mthd :sel | 
  3386     searchBlock := [:cls :mthd :sel | 
  3388 
  3387 
  3389                     |mSource globals potentialNames|
  3388                     |mSource globals potentialNames|
  3390 
  3389 
  3412                   ].
  3411                   ].
  3413 
  3412 
  3414     browser := self browseMethodsWhere:searchBlock title:title ifNone:[actionIfNone value. ^ nil].
  3413     browser := self browseMethodsWhere:searchBlock title:title ifNone:[actionIfNone value. ^ nil].
  3415     browser isNil ifTrue:[
  3414     browser isNil ifTrue:[
  3416         actionIfNone value
  3415         actionIfNone value
  3417     ] ifFalse:[
       
  3418         browser autoSearch:globalsPlainName
       
  3419     ].
  3416     ].
  3420     ^ browser
  3417     ^ browser
  3421 !
  3418 !
  3422 
  3419 
  3423 browseReferendsOfUnboundGlobalsWithTitle:title warnIfNone:doWarn
  3420 browseReferendsOfUnboundGlobalsWithTitle:title warnIfNone:doWarn
  4874                         ].
  4871                         ].
  4875 
  4872 
  4876                         src := m source.
  4873                         src := m source.
  4877                         src isNil ifTrue:[
  4874                         src isNil ifTrue:[
  4878                             ('Browser [info]: no source for ' , m printString) infoPrintCR.
  4875                             ('Browser [info]: no source for ' , m printString) infoPrintCR.
  4879                             false
       
  4880                         ] ifFalse:[
  4876                         ] ifFalse:[
  4881                             parseTree := RBParser 
  4877                             parseTree := RBParser 
  4882                                             parseSearchMethod:src 
  4878                                             parseSearchMethod:src 
  4883                                             onError: [:str :pos | 
  4879                                             onError: [:str :pos | 
  4884                                                 Transcript show:'Error in '; showCR:m. 
  4880                                                 Transcript show:'Error in '; showCR:m. 
  4901 
  4897 
  4902 searchBlockForReferendsOf:aGlobalName
  4898 searchBlockForReferendsOf:aGlobalName
  4903     "return a block which searches for all methods which reference a global named aGlobalName,
  4899     "return a block which searches for all methods which reference a global named aGlobalName,
  4904      which may be a matchpattern"
  4900      which may be a matchpattern"
  4905 
  4901 
  4906     |globalsPlainName idx matchingGlobalNames sym1 sym2|
  4902     |globalsPlainName idx sym1 sym2|
  4907 
  4903 
  4908     globalsPlainName := aGlobalName.
  4904     globalsPlainName := aGlobalName.
  4909     (idx := globalsPlainName lastIndexOf:$:) ~~ 0 ifTrue:[
  4905     (idx := globalsPlainName lastIndexOf:$:) ~~ 0 ifTrue:[
  4910         globalsPlainName := globalsPlainName copyFrom:idx+1.
  4906         globalsPlainName := globalsPlainName copyFrom:idx+1.
  4911         (globalsPlainName size == 0 or:[globalsPlainName = '*']) ifTrue:[
  4907         (globalsPlainName size == 0 or:[globalsPlainName = '*']) ifTrue:[
  6016 ! !
  6012 ! !
  6017 
  6013 
  6018 !SystemBrowser class methodsFor:'documentation'!
  6014 !SystemBrowser class methodsFor:'documentation'!
  6019 
  6015 
  6020 version
  6016 version
  6021     ^ '$Header: /cvs/stx/stx/libtool/SystemBrowser.st,v 1.321 2013-06-04 14:01:48 cg Exp $'
  6017     ^ '$Header: /cvs/stx/stx/libtool/SystemBrowser.st,v 1.322 2013-06-05 13:22:23 stefan Exp $'
  6022 !
  6018 !
  6023 
  6019 
  6024 version_CVS
  6020 version_CVS
  6025     ^ '$Header: /cvs/stx/stx/libtool/SystemBrowser.st,v 1.321 2013-06-04 14:01:48 cg Exp $'
  6021     ^ '$Header: /cvs/stx/stx/libtool/SystemBrowser.st,v 1.322 2013-06-05 13:22:23 stefan Exp $'
  6026 !
  6022 !
  6027 
  6023 
  6028 version_SVN
  6024 version_SVN
  6029     ^ '$Id: SystemBrowser.st,v 1.321 2013-06-04 14:01:48 cg Exp $'
  6025     ^ '$Id: SystemBrowser.st,v 1.322 2013-06-05 13:22:23 stefan Exp $'
  6030 ! !
  6026 ! !
  6031 
  6027 
  6032 
  6028 
  6033 SystemBrowser initialize!
  6029 SystemBrowser initialize!