Package net.minecraft.state.property
Class EnumProperty<T extends Enum<T> & StringIdentifiable>
java.lang.Object
net.minecraft.state.property.Property<T>
net.minecraft.state.property.EnumProperty<T>
- Direct Known Subclasses:
DirectionProperty
Represents a property that has enum values.
Notes on the enum class:
- The enum class is required to have 2 or more values.
- The enum class is required to provide a name for each value by
overriding
StringIdentifiable.asString()
. - The names of the values are required to match the valid name pattern.
Otherwise,
IllegalArgumentException
will be thrown during the validation of a property.
See Properties
for example
usages.
- Mappings:
Namespace Name named net/minecraft/state/property/EnumProperty
intermediary net/minecraft/class_2754
official dty
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.state.property.Property
Property.Value<T extends Comparable<T>>
-
Field Summary
-
Constructor Summary
ModifierConstructorDescriptionprotected
EnumProperty
(String name, Class<T> type, Collection<T> values) -
Method Summary
Modifier and TypeMethodDescriptionint
boolean
Returns all possible values of this property.Returns the name of the given value of this property.static <T extends Enum<T> & StringIdentifiable>
EnumProperty<T> Creates an enum property with all values of the given enum class.static <T extends Enum<T> & StringIdentifiable>
EnumProperty<T> of
(String name, Class<T> type, Collection<T> values) Creates an enum property with the given values.static <T extends Enum<T> & StringIdentifiable>
EnumProperty<T> Creates an enum property with the values allowed by the given filter.static <T extends Enum<T> & StringIdentifiable>
EnumProperty<T> Creates an enum property with the given values.Methods inherited from class net.minecraft.state.property.Property
createValue, createValue, getCodec, getName, getType, getValueCodec, hashCode, parse, stream, toString
-
Field Details
-
values
- Mappings:
Namespace Name Mixin selector named values
Lnet/minecraft/state/property/EnumProperty;values:Lcom/google/common/collect/ImmutableSet;
intermediary field_12595
Lnet/minecraft/class_2754;field_12595:Lcom/google/common/collect/ImmutableSet;
official a
Ldty;a:Lcom/google/common/collect/ImmutableSet;
-
byName
- Mappings:
Namespace Name Mixin selector named byName
Lnet/minecraft/state/property/EnumProperty;byName:Ljava/util/Map;
intermediary field_12596
Lnet/minecraft/class_2754;field_12596:Ljava/util/Map;
official b
Ldty;b:Ljava/util/Map;
-
-
Constructor Details
-
EnumProperty
- Mappings:
Namespace Name Mixin selector named <init>
Lnet/minecraft/state/property/EnumProperty;<init>(Ljava/lang/String;Ljava/lang/Class;Ljava/util/Collection;)V
intermediary <init>
Lnet/minecraft/class_2754;<init>(Ljava/lang/String;Ljava/lang/Class;Ljava/util/Collection;)V
official <init>
Ldty;<init>(Ljava/lang/String;Ljava/lang/Class;Ljava/util/Collection;)V
-
-
Method Details
-
getValues
Returns all possible values of this property.- Specified by:
getValues
in classProperty<T extends Enum<T> & StringIdentifiable>
- Mappings:
Namespace Name Mixin selector named getValues
Lnet/minecraft/state/property/Property;getValues()Ljava/util/Collection;
intermediary method_11898
Lnet/minecraft/class_2769;method_11898()Ljava/util/Collection;
official a
Ldud;a()Ljava/util/Collection;
-
parse
- Specified by:
parse
in classProperty<T extends Enum<T> & StringIdentifiable>
- Mappings:
Namespace Name Mixin selector named parse
Lnet/minecraft/state/property/Property;parse(Ljava/lang/String;)Ljava/util/Optional;
intermediary method_11900
Lnet/minecraft/class_2769;method_11900(Ljava/lang/String;)Ljava/util/Optional;
official b
Ldud;b(Ljava/lang/String;)Ljava/util/Optional;
-
name
Description copied from class:Property
Returns the name of the given value of this property.- Specified by:
name
in classProperty<T extends Enum<T> & StringIdentifiable>
- Mappings:
Namespace Name Mixin selector named name
Lnet/minecraft/state/property/EnumProperty;name(Ljava/lang/Enum;)Ljava/lang/String;
intermediary method_11846
Lnet/minecraft/class_2754;method_11846(Ljava/lang/Enum;)Ljava/lang/String;
official a
Ldty;a(Ljava/lang/Enum;)Ljava/lang/String;
-
equals
- Overrides:
equals
in classProperty<T extends Enum<T> & StringIdentifiable>
- Mappings:
Namespace Name Mixin selector named equals
Lnet/minecraft/state/property/Property;equals(Ljava/lang/Object;)Z
intermediary equals
Lnet/minecraft/class_2769;equals(Ljava/lang/Object;)Z
official equals
Ldud;equals(Ljava/lang/Object;)Z
-
computeHashCode
public int computeHashCode()- Overrides:
computeHashCode
in classProperty<T extends Enum<T> & StringIdentifiable>
- Mappings:
Namespace Name Mixin selector named computeHashCode
Lnet/minecraft/state/property/Property;computeHashCode()I
intermediary method_11799
Lnet/minecraft/class_2769;method_11799()I
official b
Ldud;b()I
-
of
public static <T extends Enum<T> & StringIdentifiable> EnumProperty<T> of(String name, Class<T> type) Creates an enum property with all values of the given enum class.- Parameters:
name
- the name of the property; see the note on the nametype
- the type of the values the property contains- Throws:
IllegalArgumentException
- if multiple values have the same name- Mappings:
Namespace Name Mixin selector named of
Lnet/minecraft/state/property/EnumProperty;of(Ljava/lang/String;Ljava/lang/Class;)Lnet/minecraft/state/property/EnumProperty;
intermediary method_11850
Lnet/minecraft/class_2754;method_11850(Ljava/lang/String;Ljava/lang/Class;)Lnet/minecraft/class_2754;
official a
Ldty;a(Ljava/lang/String;Ljava/lang/Class;)Ldty;
-
of
public static <T extends Enum<T> & StringIdentifiable> EnumProperty<T> of(String name, Class<T> type, Predicate<T> filter) Creates an enum property with the values allowed by the given filter.- Parameters:
name
- the name of the property; see the note on the nametype
- the type of the values the property containsfilter
- the filter which specifies if a value is allowed; required to allow 2 or more values- Throws:
IllegalArgumentException
- if multiple values have the same name- See Also:
- Mappings:
Namespace Name Mixin selector named of
Lnet/minecraft/state/property/EnumProperty;of(Ljava/lang/String;Ljava/lang/Class;Ljava/util/function/Predicate;)Lnet/minecraft/state/property/EnumProperty;
intermediary method_11848
Lnet/minecraft/class_2754;method_11848(Ljava/lang/String;Ljava/lang/Class;Ljava/util/function/Predicate;)Lnet/minecraft/class_2754;
official a
Ldty;a(Ljava/lang/String;Ljava/lang/Class;Ljava/util/function/Predicate;)Ldty;
-
of
public static <T extends Enum<T> & StringIdentifiable> EnumProperty<T> of(String name, Class<T> type, T[] values) Creates an enum property with the given values.- Parameters:
name
- the name of the property; see the note on the nametype
- the type of the values the property containsvalues
- the values the property contains; required to have 2 or more values- Throws:
IllegalArgumentException
- if multiple values have the same name- See Also:
- Mappings:
Namespace Name Mixin selector named of
Lnet/minecraft/state/property/EnumProperty;of(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Enum;)Lnet/minecraft/state/property/EnumProperty;
intermediary method_11849
Lnet/minecraft/class_2754;method_11849(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Enum;)Lnet/minecraft/class_2754;
official a
Ldty;a(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Enum;)Ldty;
-
of
public static <T extends Enum<T> & StringIdentifiable> EnumProperty<T> of(String name, Class<T> type, Collection<T> values) Creates an enum property with the given values.- Parameters:
name
- the name of the property; see the note on the nametype
- the type of the values the property containsvalues
- the values the property contains; required to have 2 or more values- Throws:
IllegalArgumentException
- if multiple values have the same name- See Also:
- Mappings:
Namespace Name Mixin selector named of
Lnet/minecraft/state/property/EnumProperty;of(Ljava/lang/String;Ljava/lang/Class;Ljava/util/Collection;)Lnet/minecraft/state/property/EnumProperty;
intermediary method_11847
Lnet/minecraft/class_2754;method_11847(Ljava/lang/String;Ljava/lang/Class;Ljava/util/Collection;)Lnet/minecraft/class_2754;
official a
Ldty;a(Ljava/lang/String;Ljava/lang/Class;Ljava/util/Collection;)Ldty;
-