| // Copyright (c) 2017, the R8 project authors. Please see the AUTHORS file | |
| // for details. All rights reserved. Use of this source code is governed by a | |
| // BSD-style license that can be found in the LICENSE file. | |
| package getmembers; | |
| import java.lang.reflect.Field; | |
| import java.lang.reflect.Method; | |
| public class Main { | |
| public static void main(String[] args) throws Exception { | |
| Class a = A.class; | |
| Field foo = a.getDeclaredField("foo"); | |
| assert foo != null; | |
| assert foo.get(null).equals("foo"); | |
| System.out.println(foo.get(null)); | |
| Method bar = a.getDeclaredMethod("bar", new Class[] { String.class }); | |
| assert bar != null; | |
| A instanceA = new A(); | |
| String barResult = (String) bar.invoke(instanceA, "bar"); | |
| assert barResult.startsWith("foo"); | |
| System.out.println(barResult); | |
| String bazResult = B.inliner(); | |
| assert bazResult.startsWith("foo"); | |
| System.out.println(bazResult); | |
| } | |
| } |