Mercurial > hg > truffle
diff truffle/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/Layout.java @ 22150:ac6dadffdf32
add Layout.newLayout() as replacement for `new LayoutBuilder()`
author | Andreas Woess <andreas.woess@oracle.com> |
---|---|
date | Mon, 14 Sep 2015 13:40:10 +0200 |
parents | 1a1aa12ab310 |
children | 494bfe8a25ff |
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/Layout.java Mon Sep 14 13:43:21 2015 +0200 +++ b/truffle/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/Layout.java Mon Sep 14 13:40:10 2015 +0200 @@ -24,9 +24,9 @@ */ package com.oracle.truffle.api.object; -import java.util.*; +import java.util.EnumSet; +import java.util.ServiceLoader; -import com.oracle.truffle.api.nodes.NodeUtil.FieldOffsetProvider; import com.oracle.truffle.api.object.Shape.Allocator; /** @@ -51,16 +51,28 @@ IntToLong, } + /** + * Create a new {@link LayoutBuilder}. + */ + @SuppressWarnings("deprecation") + public static LayoutBuilder newLayout() { + return new LayoutBuilder(); + } + + /** + * Equivalent to {@code Layout.newLayout().build()}. + */ public static Layout createLayout() { return createLayout(NONE); } + /** + * Equivalent to + * {@code Layout.newLayout().setAllowedImplicitCasts(allowedImplicitCasts).build()}. + */ + @Deprecated public static Layout createLayout(EnumSet<ImplicitCast> allowedImplicitCasts) { - return new LayoutBuilder().setAllowedImplicitCasts(allowedImplicitCasts).build(); - } - - public static Layout createLayout(EnumSet<ImplicitCast> allowedImplicitCasts, FieldOffsetProvider fieldOffsetProvider) { - return new LayoutBuilder().setAllowedImplicitCasts(allowedImplicitCasts).setFieldOffsetProvider(fieldOffsetProvider).build(); + return newLayout().setAllowedImplicitCasts(allowedImplicitCasts).build(); } public abstract DynamicObject newInstance(Shape shape);