changeset 22306:8bc57c7bbf88

Deprecate Layout.Builder#getAllowedImplicitCasts()
author Andreas Woess <andreas.woess@oracle.com>
date Tue, 13 Oct 2015 14:13:27 +0200
parents ae5c160bd047
children d9b3e229ee46
files truffle/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/Layout.java truffle/com.oracle.truffle.object.basic/src/com/oracle/truffle/object/basic/BasicLayout.java truffle/com.oracle.truffle.object.basic/src/com/oracle/truffle/object/basic/DefaultLayoutFactory.java
diffstat 3 files changed, 10 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/Layout.java	Tue Oct 13 18:53:04 2015 +0200
+++ b/truffle/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/Layout.java	Tue Oct 13 14:13:27 2015 +0200
@@ -169,8 +169,13 @@
             return this;
         }
 
+        @Deprecated
         public EnumSet<ImplicitCast> getAllowedImplicitCasts() {
             return allowedImplicitCasts;
         }
     }
+
+    protected static EnumSet<ImplicitCast> getAllowedImplicitCasts(Builder builder) {
+        return builder.allowedImplicitCasts;
+    }
 }
--- a/truffle/com.oracle.truffle.object.basic/src/com/oracle/truffle/object/basic/BasicLayout.java	Tue Oct 13 18:53:04 2015 +0200
+++ b/truffle/com.oracle.truffle.object.basic/src/com/oracle/truffle/object/basic/BasicLayout.java	Tue Oct 13 14:13:27 2015 +0200
@@ -23,6 +23,7 @@
 package com.oracle.truffle.object.basic;
 
 import com.oracle.truffle.api.object.DynamicObject;
+import com.oracle.truffle.api.object.Layout;
 import com.oracle.truffle.api.object.Location;
 import com.oracle.truffle.api.object.ObjectLocation;
 import com.oracle.truffle.api.object.ObjectType;
@@ -34,6 +35,7 @@
 import com.oracle.truffle.object.Locations.DualLocation;
 import com.oracle.truffle.object.basic.BasicLocations.ObjectFieldLocation;
 import com.oracle.truffle.object.basic.BasicLocations.SimpleObjectFieldLocation;
+
 import java.util.EnumSet;
 
 public class BasicLayout extends LayoutImpl {
@@ -50,8 +52,8 @@
         this.objectArrayLocation = DynamicObjectBasic.OBJECT_ARRAY_LOCATION;
     }
 
-    static LayoutImpl createLayoutImpl(EnumSet<ImplicitCast> allowedImplicitCasts, LayoutStrategy strategy) {
-        return new BasicLayout(allowedImplicitCasts, strategy);
+    static LayoutImpl createLayoutImpl(Layout.Builder builder, LayoutStrategy strategy) {
+        return new BasicLayout(getAllowedImplicitCasts(builder), strategy);
     }
 
     @Override
--- a/truffle/com.oracle.truffle.object.basic/src/com/oracle/truffle/object/basic/DefaultLayoutFactory.java	Tue Oct 13 18:53:04 2015 +0200
+++ b/truffle/com.oracle.truffle.object.basic/src/com/oracle/truffle/object/basic/DefaultLayoutFactory.java	Tue Oct 13 14:13:27 2015 +0200
@@ -30,7 +30,7 @@
 
 public class DefaultLayoutFactory implements LayoutFactory {
     public Layout createLayout(Layout.Builder layoutBuilder) {
-        return BasicLayout.createLayoutImpl(layoutBuilder.getAllowedImplicitCasts(), new DefaultStrategy());
+        return BasicLayout.createLayoutImpl(layoutBuilder, new DefaultStrategy());
     }
 
     public Property createProperty(Object id, Location location) {