45 class ciBaseObject; 46 class ciObject; 47 class ciNullObject; 48 class ciInstance; 49 class ciCallSite; 50 class ciMemberName; 51 class ciMethodHandle; 52 class ciMethodType; 53 class ciArray; 54 class ciObjArray; 55 class ciTypeArray; 56 class ciSymbol; 57 class ciMetadata; 58 class ciMethod; 59 class ciMethodData; 60 class ciReceiverTypeData; // part of ciMethodData 61 class ciType; 62 class ciReturnAddress; 63 class ciKlass; 64 class ciInstanceKlass; 65 class ciArrayKlass; 66 class ciObjArrayKlass; 67 class ciTypeArrayKlass; 68 69 // Simulate Java Language style package-private access with 70 // friend declarations. 71 // This is a great idea but gcc and other C++ compilers give an 72 // error for being friends with yourself, so this macro does not 73 // compile on some platforms. 74 75 // Everyone gives access to ciObjectFactory 76 #define CI_PACKAGE_ACCESS \ 77 friend class ciObjectFactory; \ 78 friend class VMStructs; 79 80 // These are the packages that have access to ciEnv 81 // Any more access must be given explicitly. 82 #define CI_PACKAGE_ACCESS_TO \ 83 friend class ciObjectFactory; \ 84 friend class VMStructs; \ 85 friend class ciCallSite; \ 86 friend class ciConstantPoolCache; \ 87 friend class ciField; \ 95 friend class ciExceptionHandlerStream; \ 96 friend class ciObject; \ 97 friend class ciNullObject; \ 98 friend class ciInstance; \ 99 friend class ciMemberName; \ 100 friend class ciMethod; \ 101 friend class ciMethodData; \ 102 friend class ciMethodHandle; \ 103 friend class ciMethodType; \ 104 friend class ciReceiverTypeData; \ 105 friend class ciTypeEntries; \ 106 friend class ciSpeculativeTrapData; \ 107 friend class ciSymbol; \ 108 friend class ciArray; \ 109 friend class ciObjArray; \ 110 friend class ciMetadata; \ 111 friend class ciReplay; \ 112 friend class ciTypeArray; \ 113 friend class ciType; \ 114 friend class ciReturnAddress; \ 115 friend class ciKlass; \ 116 friend class ciInstanceKlass; \ 117 friend class ciArrayKlass; \ 118 friend class ciObjArrayKlass; \ 119 friend class ciTypeArrayKlass; \ 120 121 #endif // SHARE_CI_CICLASSLIST_HPP | 45 class ciBaseObject; 46 class ciObject; 47 class ciNullObject; 48 class ciInstance; 49 class ciCallSite; 50 class ciMemberName; 51 class ciMethodHandle; 52 class ciMethodType; 53 class ciArray; 54 class ciObjArray; 55 class ciTypeArray; 56 class ciSymbol; 57 class ciMetadata; 58 class ciMethod; 59 class ciMethodData; 60 class ciReceiverTypeData; // part of ciMethodData 61 class ciType; 62 class ciReturnAddress; 63 class ciKlass; 64 class ciInstanceKlass; 65 class ciValueKlass; 66 class ciArrayKlass; 67 class ciValueArrayKlass; 68 class ciObjArrayKlass; 69 class ciTypeArrayKlass; 70 class ciWrapper; 71 72 // Simulate Java Language style package-private access with 73 // friend declarations. 74 // This is a great idea but gcc and other C++ compilers give an 75 // error for being friends with yourself, so this macro does not 76 // compile on some platforms. 77 78 // Everyone gives access to ciObjectFactory 79 #define CI_PACKAGE_ACCESS \ 80 friend class ciObjectFactory; \ 81 friend class VMStructs; 82 83 // These are the packages that have access to ciEnv 84 // Any more access must be given explicitly. 85 #define CI_PACKAGE_ACCESS_TO \ 86 friend class ciObjectFactory; \ 87 friend class VMStructs; \ 88 friend class ciCallSite; \ 89 friend class ciConstantPoolCache; \ 90 friend class ciField; \ 98 friend class ciExceptionHandlerStream; \ 99 friend class ciObject; \ 100 friend class ciNullObject; \ 101 friend class ciInstance; \ 102 friend class ciMemberName; \ 103 friend class ciMethod; \ 104 friend class ciMethodData; \ 105 friend class ciMethodHandle; \ 106 friend class ciMethodType; \ 107 friend class ciReceiverTypeData; \ 108 friend class ciTypeEntries; \ 109 friend class ciSpeculativeTrapData; \ 110 friend class ciSymbol; \ 111 friend class ciArray; \ 112 friend class ciObjArray; \ 113 friend class ciMetadata; \ 114 friend class ciReplay; \ 115 friend class ciTypeArray; \ 116 friend class ciType; \ 117 friend class ciReturnAddress; \ 118 friend class ciWrapper; \ 119 friend class ciKlass; \ 120 friend class ciInstanceKlass; \ 121 friend class ciValueKlass; \ 122 friend class ciArrayKlass; \ 123 friend class ciValueArrayKlass; \ 124 friend class ciObjArrayKlass; \ 125 friend class ciTypeArrayKlass; \ 126 127 #endif // SHARE_CI_CICLASSLIST_HPP |