From b2d0af7a9fb0d16f14b294802f6718ac315d0de8 Mon Sep 17 00:00:00 2001 From: shedaniel Date: Fri, 20 Dec 2019 17:31:30 +0800 Subject: 3.2.27 --- .../java/me/shedaniel/rei/api/ObjectHolder.java | 37 ++++++++++++++++++---- 1 file changed, 31 insertions(+), 6 deletions(-) (limited to 'src/main/java/me/shedaniel/rei/api/ObjectHolder.java') diff --git a/src/main/java/me/shedaniel/rei/api/ObjectHolder.java b/src/main/java/me/shedaniel/rei/api/ObjectHolder.java index d3b6189b1..bf1dd3b5d 100644 --- a/src/main/java/me/shedaniel/rei/api/ObjectHolder.java +++ b/src/main/java/me/shedaniel/rei/api/ObjectHolder.java @@ -5,18 +5,43 @@ package me.shedaniel.rei.api; +import me.shedaniel.rei.impl.ObjectHolderImpl; + public interface ObjectHolder { - int intValue(); + @SuppressWarnings("deprecation") + static ObjectHolder of(T o) { + return new ObjectHolderImpl<>(o); + } + + @Deprecated + default int intValue() { + return (int) (Object) value(); + } - long longValue(); + @Deprecated + default long longValue() { + return (long) (Object) value(); + } - boolean booleanValue(); + @Deprecated + default boolean booleanValue() { + return (boolean) (Object) value(); + } - float floatValue(); + @Deprecated + default float floatValue() { + return (float) (Object) value(); + } - double doubleValue(); + @Deprecated + default double doubleValue() { + return (double) (Object) value(); + } - String stringValue(); + @Deprecated + default String stringValue() { + return (String) value(); + } T value(); } \ No newline at end of file -- cgit