Mercurial > hg > truffle
changeset 22287:479028cce974
Layout cleanup
author | Andreas Woess <andreas.woess@oracle.com> |
---|---|
date | Wed, 07 Oct 2015 20:27:40 +0200 |
parents | 5b1d1de9ba6e |
children | 47172a9b40ac |
files | truffle/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/Layout.java |
diffstat | 1 files changed, 15 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/Layout.java Wed Oct 07 17:17:56 2015 +0200 +++ b/truffle/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/Layout.java Wed Oct 07 20:27:40 2015 +0200 @@ -35,9 +35,9 @@ * An object may change its shape but only to shapes of the same layout. */ public abstract class Layout { - public static final EnumSet<ImplicitCast> NONE = EnumSet.noneOf(ImplicitCast.class); - public static final EnumSet<ImplicitCast> INT_TO_DOUBLE = EnumSet.of(ImplicitCast.IntToDouble); - public static final EnumSet<ImplicitCast> INT_TO_LONG = EnumSet.of(ImplicitCast.IntToLong); + @Deprecated public static final EnumSet<ImplicitCast> NONE = EnumSet.noneOf(ImplicitCast.class); + @Deprecated public static final EnumSet<ImplicitCast> INT_TO_DOUBLE = EnumSet.of(ImplicitCast.IntToDouble); + @Deprecated public static final EnumSet<ImplicitCast> INT_TO_LONG = EnumSet.of(ImplicitCast.IntToLong); public static final String OPTION_PREFIX = "truffle.object."; @@ -62,7 +62,7 @@ * Equivalent to {@code Layout.newLayout().build()}. */ public static Layout createLayout() { - return createLayout(NONE); + return newLayout().build(); } /** @@ -139,7 +139,7 @@ * Create a new layout builder. */ private Builder() { - this.allowedImplicitCasts = Layout.NONE; + this.allowedImplicitCasts = EnumSet.noneOf(ImplicitCast.class); } /** @@ -159,6 +159,16 @@ return this; } + /** + * Add an allowed implicit cast in this layout. + * + * @see Layout.ImplicitCast + */ + public Builder addAllowedImplicitCast(ImplicitCast allowedImplicitCast) { + this.allowedImplicitCasts.add(allowedImplicitCast); + return this; + } + public EnumSet<ImplicitCast> getAllowedImplicitCasts() { return allowedImplicitCasts; }