< prev index next >

test/jdk/valhalla/valuetypes/MethodHandleTest.java

Print this page

        

*** 23,42 **** /* * @test * @summary test MethodHandle/VarHandle on value types ! * @build Point Line MutablePath ! * @compile -XDallowFlattenabilityModifiers MethodHandleTest.java * @run testng/othervm -XX:+EnableValhalla MethodHandleTest */ import java.lang.invoke.*; import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.util.*; - import java.util.stream.Stream; import org.testng.annotations.BeforeTest; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; import static org.testng.Assert.*; --- 23,40 ---- /* * @test * @summary test MethodHandle/VarHandle on value types ! * @compile -XDallowFlattenabilityModifiers Point.java Line.java MutablePath.java MixedValues.java * @run testng/othervm -XX:+EnableValhalla MethodHandleTest */ import java.lang.invoke.*; import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.util.*; import org.testng.annotations.BeforeTest; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; import static org.testng.Assert.*;
*** 83,93 **** @Test public static void testMixedValues() throws Throwable { MixedValues mv = new MixedValues(P, L, PATH, "mixed", "types"); MethodHandleTest test = ! new MethodHandleTest("MethodHandleTest$MixedValues", mv, "p", "l", "mutablePath", "list", "nfp"); test.run(); Point p = Point.makePoint(100, 200); Line l = Line.makeLine(100, 200, 300, 400); test.setValueField("p", mv, p); --- 81,91 ---- @Test public static void testMixedValues() throws Throwable { MixedValues mv = new MixedValues(P, L, PATH, "mixed", "types"); MethodHandleTest test = ! new MethodHandleTest("MixedValues", mv, "p", "l", "mutablePath", "list", "nfp"); test.run(); Point p = Point.makePoint(100, 200); Line l = Line.makeLine(100, 200, 300, 400); test.setValueField("p", mv, p);
*** 304,327 **** boolean isFlattenable(Field f) { return (f.getModifiers() & 0x00000100) == 0x00000100; } - static class MixedValues { - static Point staticPoint = Point.makePoint(10, 10); - static Line staticLine; // LW1 allows null static value field - Point p; - Line l; - MutablePath mutablePath; - List<String> list; - __NotFlattened Point nfp; - - public MixedValues(Point p, Line l, MutablePath path, String... names) { - this.p = p; - this.l = l; - this.mutablePath = path; - this.list = List.of(names); - this.nfp = p; - } - } - } --- 302,307 ----
< prev index next >