ProjectDefinition.st
changeset 9908 eede5b535b1e
parent 9906 9efd21c9b1b6
child 9909 a92096c60681
equal deleted inserted replaced
9907:8f907d537b9c 9908:eede5b535b1e
  2380     methods := OrderedCollection new.
  2380     methods := OrderedCollection new.
  2381     Smalltalk allClassesDo:[:eachClass |
  2381     Smalltalk allClassesDo:[:eachClass |
  2382         |classPackage|
  2382         |classPackage|
  2383 
  2383 
  2384         classPackage := eachClass package.
  2384         classPackage := eachClass package.
  2385         eachClass instAndClassMethodsDo:[:mthd |
  2385         classPackage ~= aProjectID ifTrue:[ 
  2386             mthd package ~= classPackage ifTrue:[ 
  2386             eachClass instAndClassMethodsDo:[:mthd |
  2387                 mthd package = aProjectID ifTrue:[
  2387                 |methodsPackage|
  2388                     methods add:mthd 
  2388 
  2389                 ]
  2389                 methodsPackage := mthd package.
       
  2390                 methodsPackage ~= classPackage ifTrue:[ 
       
  2391                     methodsPackage = aProjectID ifTrue:[
       
  2392                         methods add:mthd 
       
  2393                     ]
       
  2394                 ].
  2390             ].
  2395             ].
  2391         ].
  2396         ].
  2392     ].
  2397     ].
  2393     methods sort:[:m1 :m2 | m1 mclass name < m2 mclass name].
  2398 "/    methods 
  2394     methods sort:[:m1 :m2 | m2 mclass theNonMetaclass isSubclassOf:m1 mclass theNonMetaclass].
  2399 "/        sort:[:m1 :m2 | 
       
  2400 "/            |c1 c2|
       
  2401 "/
       
  2402 "/            c1 := m1 mclass theNonMetaclass.
       
  2403 "/            c2 := m2 mclass theNonMetaclass.
       
  2404 "/            c1 name < c2 name
       
  2405 "/        ].
       
  2406     methods 
       
  2407         sort:[:m1 :m2 | 
       
  2408             |c1 c2|
       
  2409 
       
  2410             c1 := m1 mclass.
       
  2411             c2 := m2 mclass.
       
  2412             c1 == c2 ifTrue:[
       
  2413                 m1 selector < m2 selector
       
  2414             ] ifFalse:[
       
  2415                 (c2 isMeta and:[c1 isMeta not]) ifTrue:[
       
  2416                     true
       
  2417                 ] ifFalse:[
       
  2418                     (c1 isMeta and:[c2 isMeta not]) ifTrue:[
       
  2419                         false
       
  2420                     ] ifFalse:[
       
  2421                         c1 name < c2 name
       
  2422 "/                        (c2 isSubclassOf:c1) ifTrue:[
       
  2423 "/                            true
       
  2424 "/                        ] ifFalse:[
       
  2425 "/                            (c1 isSubclassOf:c2) ifTrue:[
       
  2426 "/                                false
       
  2427 "/                            ] ifFalse:[
       
  2428 "/                                "/ leave as is
       
  2429 "/                                true
       
  2430 "/                            ].
       
  2431 "/                        ].
       
  2432                     ].
       
  2433                 ].
       
  2434             ].
       
  2435         ].
  2395     ^ methods
  2436     ^ methods
  2396 
  2437 
  2397     "
  2438     "
  2398      self searchForExtensionsWithProject:#'bosch:dapasx'
  2439      self searchForExtensionsWithProject:#'bosch:dapasx'
  2399      self searchForExtensionsWithProject:#'cg:oyster'
  2440      self searchForExtensionsWithProject:#'cg:oyster'
  2842 ! !
  2883 ! !
  2843 
  2884 
  2844 !ProjectDefinition class methodsFor:'documentation'!
  2885 !ProjectDefinition class methodsFor:'documentation'!
  2845 
  2886 
  2846 version
  2887 version
  2847     ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.65 2006-09-15 17:34:14 cg Exp $'
  2888     ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.66 2006-09-15 17:52:31 cg Exp $'
  2848 ! !
  2889 ! !
  2849 
  2890 
  2850 ProjectDefinition initialize!
  2891 ProjectDefinition initialize!