18 LoadedProjects' |
18 LoadedProjects' |
19 poolDictionaries:'' |
19 poolDictionaries:'' |
20 category:'System-Support' |
20 category:'System-Support' |
21 ! |
21 ! |
22 |
22 |
23 Object subclass:#ClassInfo |
23 Object subclass:#MethodInfo |
24 instanceVariableNames:'conditionForInclusion className classFileName' |
24 instanceVariableNames:'conditionForInclusion methodName className fileName' |
25 classVariableNames:'' |
25 classVariableNames:'' |
26 poolDictionaries:'' |
26 poolDictionaries:'' |
27 privateIn:Project |
27 privateIn:Project |
28 ! |
28 ! |
29 |
29 |
30 Object subclass:#MethodInfo |
30 Object subclass:#ClassInfo |
31 instanceVariableNames:'conditionForInclusion methodName className fileName' |
31 instanceVariableNames:'conditionForInclusion className classFileName' |
32 classVariableNames:'' |
32 classVariableNames:'' |
33 poolDictionaries:'' |
33 poolDictionaries:'' |
34 privateIn:Project |
34 privateIn:Project |
35 ! |
35 ! |
36 |
36 |
2419 isLoaded notNil ifTrue:[^ isLoaded]. |
2419 isLoaded notNil ifTrue:[^ isLoaded]. |
2420 |
2420 |
2421 "/ check for loaded class-library - assume loaded if present. |
2421 "/ check for loaded class-library - assume loaded if present. |
2422 binaryModule := ObjectMemory binaryModuleInfo detect:[:i | i package = self package] ifNone:nil. |
2422 binaryModule := ObjectMemory binaryModuleInfo detect:[:i | i package = self package] ifNone:nil. |
2423 binaryModule notNil ifTrue:[ |
2423 binaryModule notNil ifTrue:[ |
2424 ^ true |
2424 ^ true |
2425 ]. |
2425 ]. |
2426 |
2426 |
2427 "/ check for all classes ... |
2427 "/ check for all classes ... |
2428 self classes do:[:aClassOrClassName | |
2428 self classes do:[:aClassOrClassName | |
2429 aClassOrClassName isBehavior ifFalse:[ |
2429 aClassOrClassName isBehavior ifFalse:[ |
2430 aClassOrClassName isSymbol ifTrue:[ |
2430 aClassOrClassName isSymbol ifTrue:[ |
2431 (cls := Smalltalk at:aClassOrClassName) isNil ifTrue:[ |
2431 (cls := Smalltalk at:aClassOrClassName) isNil ifTrue:[ |
2432 ^ false |
2432 ^ false |
2433 ]. |
2433 ]. |
2434 cls isBehavior ifFalse:[^ false]. |
2434 cls isBehavior ifFalse:[^ false]. |
2435 cls isLoaded ifFalse:[^ false]. |
2435 cls isLoaded ifFalse:[^ false]. |
2436 ] ifFalse:[ |
2436 ] ifFalse:[ |
2437 self halt. |
2437 self halt. |
2438 ^ false |
2438 ^ false |
2439 ] |
2439 ] |
2440 ] |
2440 ] |
2441 ]. |
2441 ]. |
2442 |
2442 |
2443 "/ check for all patches & extensions ... |
2443 "/ check for all patches & extensions ... |
2444 self methods do:[:aMethodInfo | |
2444 self methods do:[:aMethodInfo | |
2445 aMethodInfo method isNil ifTrue:[ |
2445 aMethodInfo theMethod isNil ifTrue:[ |
2446 ^ false |
2446 ^ false |
2447 ]. |
2447 ]. |
2448 ]. |
2448 ]. |
2449 |
2449 |
2450 ^ true |
2450 ^ true |
2451 |
2451 |
2452 " |
2452 " |
2453 (Project projectWithId:#'stx:libbasic') isLoaded |
2453 (Project projectWithId:#'stx:libbasic') isLoaded |
2454 (Project projectWithId:#'stx:goodies/persistency') isLoaded |
2454 (Project projectWithId:#'stx:goodies/persistency') isLoaded |
2455 " |
2455 " |
2456 |
2456 |
|
2457 "Modified: / 26.9.1999 / 13:39:55 / cg" |
2457 ! |
2458 ! |
2458 |
2459 |
2459 methodInfo |
2460 methodInfo |
2460 "return a methodInfo collection of methods belonging to that project" |
2461 "return a methodInfo collection of methods belonging to that project" |
2461 |
2462 |
2638 |
2639 |
2639 "Modified: 3.5.1996 / 23:59:10 / stefan" |
2640 "Modified: 3.5.1996 / 23:59:10 / stefan" |
2640 "Modified: 14.2.1997 / 15:38:47 / cg" |
2641 "Modified: 14.2.1997 / 15:38:47 / cg" |
2641 ! ! |
2642 ! ! |
2642 |
2643 |
|
2644 !Project::MethodInfo methodsFor:'accessing'! |
|
2645 |
|
2646 className |
|
2647 "return the value of the instance variable 'className' (automatically generated)" |
|
2648 |
|
2649 ^ className! |
|
2650 |
|
2651 className:something |
|
2652 "set the value of the instance variable 'className' (automatically generated)" |
|
2653 |
|
2654 className := something.! |
|
2655 |
|
2656 conditionForInclusion |
|
2657 "return the value of the instance variable 'conditionForInclusion' (automatically generated)" |
|
2658 |
|
2659 ^ conditionForInclusion! |
|
2660 |
|
2661 conditionForInclusion:something |
|
2662 "set the value of the instance variable 'conditionForInclusion' (automatically generated)" |
|
2663 |
|
2664 conditionForInclusion := something.! |
|
2665 |
|
2666 fileName |
|
2667 "return the value of the instance variable 'fileName' (automatically generated)" |
|
2668 |
|
2669 ^ fileName! |
|
2670 |
|
2671 fileName:something |
|
2672 "set the value of the instance variable 'fileName' (automatically generated)" |
|
2673 |
|
2674 fileName := something.! |
|
2675 |
|
2676 methodName |
|
2677 "return the value of the instance variable 'methodName' (automatically generated)" |
|
2678 |
|
2679 ^ methodName! |
|
2680 |
|
2681 methodName:something |
|
2682 "set the value of the instance variable 'methodName' (automatically generated)" |
|
2683 |
|
2684 methodName := something.! ! |
|
2685 |
|
2686 !Project::MethodInfo methodsFor:'printing & storing'! |
|
2687 |
|
2688 displayString |
|
2689 ^ 'MethodInfo: ' , className , ' ' , methodName |
|
2690 |
|
2691 |
|
2692 ! ! |
|
2693 |
|
2694 !Project::MethodInfo methodsFor:'queries'! |
|
2695 |
|
2696 method |
|
2697 self obsoleteMethodWarning. |
|
2698 ^ self theMethod. |
|
2699 |
|
2700 "Modified: / 26.9.1999 / 13:40:16 / cg" |
|
2701 ! |
|
2702 |
|
2703 theMethod |
|
2704 |cls| |
|
2705 |
|
2706 cls := Smalltalk classNamed:className. |
|
2707 cls isNil ifTrue:[ ^ nil]. |
|
2708 ^ cls compiledMethodAt:methodName asSymbol. |
|
2709 |
|
2710 "Created: / 26.9.1999 / 13:39:07 / cg" |
|
2711 ! ! |
|
2712 |
2643 !Project::ClassInfo methodsFor:'accessing'! |
2713 !Project::ClassInfo methodsFor:'accessing'! |
2644 |
2714 |
2645 classFileName |
2715 classFileName |
2646 "return the value of the instance variable 'classFileName' (automatically generated)" |
2716 "return the value of the instance variable 'classFileName' (automatically generated)" |
2647 |
2717 |
2676 |
2746 |
2677 displayString |
2747 displayString |
2678 ^ 'ClassInfo: ' , className |
2748 ^ 'ClassInfo: ' , className |
2679 ! ! |
2749 ! ! |
2680 |
2750 |
2681 !Project::MethodInfo methodsFor:'accessing'! |
2751 !Project::ClassInfo methodsFor:'queries'! |
2682 |
2752 |
2683 className |
2753 theClass |
2684 "return the value of the instance variable 'className' (automatically generated)" |
|
2685 |
|
2686 ^ className! |
|
2687 |
|
2688 className:something |
|
2689 "set the value of the instance variable 'className' (automatically generated)" |
|
2690 |
|
2691 className := something.! |
|
2692 |
|
2693 conditionForInclusion |
|
2694 "return the value of the instance variable 'conditionForInclusion' (automatically generated)" |
|
2695 |
|
2696 ^ conditionForInclusion! |
|
2697 |
|
2698 conditionForInclusion:something |
|
2699 "set the value of the instance variable 'conditionForInclusion' (automatically generated)" |
|
2700 |
|
2701 conditionForInclusion := something.! |
|
2702 |
|
2703 fileName |
|
2704 "return the value of the instance variable 'fileName' (automatically generated)" |
|
2705 |
|
2706 ^ fileName! |
|
2707 |
|
2708 fileName:something |
|
2709 "set the value of the instance variable 'fileName' (automatically generated)" |
|
2710 |
|
2711 fileName := something.! |
|
2712 |
|
2713 methodName |
|
2714 "return the value of the instance variable 'methodName' (automatically generated)" |
|
2715 |
|
2716 ^ methodName! |
|
2717 |
|
2718 methodName:something |
|
2719 "set the value of the instance variable 'methodName' (automatically generated)" |
|
2720 |
|
2721 methodName := something.! ! |
|
2722 |
|
2723 !Project::MethodInfo methodsFor:'printing & storing'! |
|
2724 |
|
2725 displayString |
|
2726 ^ 'MethodInfo: ' , className , ' ' , methodName |
|
2727 |
|
2728 |
|
2729 ! ! |
|
2730 |
|
2731 !Project::MethodInfo methodsFor:'queries'! |
|
2732 |
|
2733 method |
|
2734 |cls| |
2754 |cls| |
2735 |
2755 |
2736 cls := Smalltalk classNamed:className. |
2756 cls := Smalltalk classNamed:className. |
2737 cls isNil ifTrue:[ ^ nil]. |
2757 cls isNil ifTrue:[ ^ nil]. |
2738 ^ cls compiledMethodAt:methodName asSymbol. |
2758 ^ cls |
|
2759 |
|
2760 "Created: / 26.9.1999 / 13:39:00 / cg" |
2739 ! ! |
2761 ! ! |
2740 |
2762 |
2741 !Project class methodsFor:'documentation'! |
2763 !Project class methodsFor:'documentation'! |
2742 |
2764 |
2743 version |
2765 version |
2744 ^ '$Header: /cvs/stx/stx/libbasic/Project.st,v 1.111 1999-09-25 13:20:37 cg Exp $' |
2766 ^ '$Header: /cvs/stx/stx/libbasic/Project.st,v 1.112 1999-09-26 13:29:45 cg Exp $' |
2745 ! ! |
2767 ! ! |
2746 Project initialize! |
2768 Project initialize! |