1 /* 2 * Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. 8 * 9 * This code is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12 * version 2 for more details (a copy is included in the LICENSE file that 13 * accompanied this code). 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 */ 23 24 // NestHost attribute is modified to contain P1.PackagedNestHost 25 // m() is declared private 26 27 class P2/PackagedNestHost2$Member { 28 0xCAFEBABE; 29 0; // minor version 30 55; // version 31 [] { // Constant Pool 32 ; // first element is empty 33 Method #7 #18; // #1 34 Field #19 #20; // #2 35 String #21; // #3 36 Method #22 #23; // #4 37 Method #24 #25; // #5 38 class #26; // #6 39 class #29; // #7 40 Utf8 "<init>"; // #8 41 Utf8 "()V"; // #9 42 Utf8 "Code"; // #10 43 Utf8 "LineNumberTable"; // #11 44 Utf8 "m"; // #12 45 Utf8 "doAccess"; // #13 46 Utf8 "SourceFile"; // #14 47 Utf8 "PackagedNestHost2.java"; // #15 48 Utf8 "NestHost"; // #16 49 class #30; // #17 50 NameAndType #8 #9; // #18 51 class #31; // #19 52 NameAndType #32 #33; // #20 53 Utf8 "You should never see this!"; // #21 54 class #34; // #22 55 NameAndType #35 #36; // #23 56 class #38; // #24 57 NameAndType #12 #9; // #25 58 Utf8 "P2/PackagedNestHost2$Member"; // #26 59 Utf8 "Member"; // #27 60 Utf8 "InnerClasses"; // #28 61 Utf8 "java/lang/Object"; // #29 62 Utf8 "P2/PackagedNestHost2"; // #30 63 Utf8 "java/lang/System"; // #31 64 Utf8 "out"; // #32 65 Utf8 "Ljava/io/PrintStream;"; // #33 66 Utf8 "java/io/PrintStream"; // #34 67 Utf8 "println"; // #35 68 Utf8 "(Ljava/lang/String;)V"; // #36 69 class #39; // #37 70 Utf8 "P1/PackagedNestHost$Member"; // #38 71 Utf8 "P1/PackagedNestHost"; // #39 72 } // Constant Pool 73 74 0x0021; // access 75 #6;// this_cpx 76 #7;// super_cpx 77 78 [] { // Interfaces 79 } // Interfaces 80 81 [] { // fields 82 } // fields 83 84 [] { // methods 85 { // Member 86 0x0001; // access 87 #8; // name_cpx 88 #9; // sig_cpx 89 [] { // Attributes 90 Attr(#10) { // Code 91 1; // max_stack 92 1; // max_locals 93 Bytes[]{ 94 0x2AB70001B1; 95 }; 96 [] { // Traps 97 } // end Traps 98 [] { // Attributes 99 Attr(#11) { // LineNumberTable 100 [] { // LineNumberTable 101 0 32; 102 } 103 } // end LineNumberTable 104 } // Attributes 105 } // end Code 106 } // Attributes 107 } // Member 108 ; 109 { // Member 110 0x000A; // access - modified 111 #12; // name_cpx 112 #9; // sig_cpx 113 [] { // Attributes 114 Attr(#10) { // Code 115 2; // max_stack 116 0; // max_locals 117 Bytes[]{ 118 0xB200021203B60004; 119 0xB1; 120 }; 121 [] { // Traps 122 } // end Traps 123 [] { // Attributes 124 Attr(#11) { // LineNumberTable 125 [] { // LineNumberTable 126 0 35; 127 8 36; 128 } 129 } // end LineNumberTable 130 } // Attributes 131 } // end Code 132 } // Attributes 133 } // Member 134 ; 135 { // Member 136 0x0009; // access 137 #13; // name_cpx 138 #9; // sig_cpx 139 [] { // Attributes 140 Attr(#10) { // Code 141 0; // max_stack 142 0; // max_locals 143 Bytes[]{ 144 0xB80005B1; 145 }; 146 [] { // Traps 147 } // end Traps 148 [] { // Attributes 149 Attr(#11) { // LineNumberTable 150 [] { // LineNumberTable 151 0 42; 152 3 43; 153 } 154 } // end LineNumberTable 155 } // Attributes 156 } // end Code 157 } // Attributes 158 } // Member 159 } // methods 160 161 [] { // Attributes 162 Attr(#14) { // SourceFile 163 #15; 164 } // end SourceFile 165 ; 166 Attr(#16) { // NestHost 167 0x0025; // modified - #37 168 } // end NestHost 169 ; 170 Attr(#28) { // InnerClasses 171 [] { // InnerClasses 172 #6 #17 #27 9; 173 #24 #37 #27 9; 174 } 175 } // end InnerClasses 176 } // Attributes 177 } // end class P2/PackagedNestHost2$Member