Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inconsistency on the parameter of equals(Object) method #2299

Closed
enbrain opened this issue Apr 9, 2021 · 4 comments · Fixed by #2361
Closed

Inconsistency on the parameter of equals(Object) method #2299

enbrain opened this issue Apr 9, 2021 · 4 comments · Fixed by #2361
Assignees
Labels
bug Fixes or discusses a bug within the mappings refactor A PR that renames existing names. vote A vote on a name refactor

Comments

@enbrain
Copy link
Contributor

enbrain commented Apr 9, 2021

Currently, there are equals(Object object), equals(Object obj), equals(Object o) and equals(Object other) in yarn mappings. It would be good to resolve inconsistency.

List of equals(Object) mappings (searched by regex equals \(Ljava/lang/Object;\)Z\n.*ARG 1)

82 results - 80 files

mappings\net\minecraft\advancement\Advancement.mapping:
  17: 	METHOD equals (Ljava/lang/Object;)Z
  18: 		ARG 1 o

mappings\net\minecraft\advancement\criterion\Criterion.mapping:
  22: 		METHOD equals (Ljava/lang/Object;)Z
  23: 			ARG 1 o

mappings\net\minecraft\block\Block.mapping:
  262: 		METHOD equals (Ljava/lang/Object;)Z
  263: 			ARG 1 o

mappings\net\minecraft\client\gl\GlBlendState.mapping:
  28: 	METHOD equals (Ljava/lang/Object;)Z
  29: 		ARG 1 o

mappings\net\minecraft\client\realms\dto\RealmsServer.mapping:
  21: 	METHOD equals (Ljava/lang/Object;)Z
  22: 		ARG 1 obj

mappings\net\minecraft\client\realms\util\TextRenderingUtils.mapping:
  20: 		METHOD equals (Ljava/lang/Object;)Z
  21: 			ARG 1 o
  32: 		METHOD equals (Ljava/lang/Object;)Z
  33: 			ARG 1 o

mappings\net\minecraft\client\render\VertexFormat.mapping:
  5: 	METHOD equals (Ljava/lang/Object;)Z
  6: 		ARG 1 o

mappings\net\minecraft\client\render\VertexFormatElement.mapping:
  12: 	METHOD equals (Ljava/lang/Object;)Z
  13: 		ARG 1 o

mappings\net\minecraft\client\render\entity\model\EntityModelLayer.mapping:
  7: 	METHOD equals (Ljava/lang/Object;)Z
  8: 		ARG 1 other

mappings\net\minecraft\client\render\model\ModelLoader.mapping:
  74: 		METHOD equals (Ljava/lang/Object;)Z
  75: 			ARG 1 o

mappings\net\minecraft\client\render\model\MultipartUnbakedModel.mapping:
  7: 	METHOD equals (Ljava/lang/Object;)Z
  8: 		ARG 1 o

mappings\net\minecraft\client\render\model\json\ModelVariant.mapping:
  11: 	METHOD equals (Ljava/lang/Object;)Z
  12: 		ARG 1 o

mappings\net\minecraft\client\render\model\json\ModelVariantMap.mapping:
   9: 	METHOD equals (Ljava/lang/Object;)Z
  10: 		ARG 1 o

mappings\net\minecraft\client\render\model\json\MultipartModelComponent.mapping:
  7: 	METHOD equals (Ljava/lang/Object;)Z
  8: 		ARG 1 o

mappings\net\minecraft\client\render\model\json\Transformation.mapping:
  10: 	METHOD equals (Ljava/lang/Object;)Z
  11: 		ARG 1 o

mappings\net\minecraft\client\render\model\json\WeightedUnbakedModel.mapping:
  5: 	METHOD equals (Ljava/lang/Object;)Z
  6: 		ARG 1 o

mappings\net\minecraft\client\resource\language\LanguageDefinition.mapping:
  11: 	METHOD equals (Ljava/lang/Object;)Z
  12: 		ARG 1 o

mappings\net\minecraft\client\util\InputUtil.mapping:
  38: 		METHOD equals (Ljava/lang/Object;)Z
  39: 			ARG 1 other

mappings\net\minecraft\client\util\VideoMode.mapping:
  16: 	METHOD equals (Ljava/lang/Object;)Z
  17: 		ARG 1 o

mappings\net\minecraft\command\argument\CoordinateArgument.mapping:
   9: 	METHOD equals (Ljava/lang/Object;)Z
  10: 		ARG 1 o

mappings\net\minecraft\command\argument\DefaultPosArgument.mapping:
   9: 	METHOD equals (Ljava/lang/Object;)Z
  10: 		ARG 1 o

mappings\net\minecraft\command\argument\LookingPosArgument.mapping:
   9: 	METHOD equals (Ljava/lang/Object;)Z
  10: 		ARG 1 o

mappings\net\minecraft\data\client\model\PropertiesMap.mapping:
  11: 	METHOD equals (Ljava/lang/Object;)Z
  12: 		ARG 1 o

mappings\net\minecraft\entity\Entity.mapping:
  86: 	METHOD equals (Ljava/lang/Object;)Z
  87: 		ARG 1 o

mappings\net\minecraft\entity\ai\pathing\PathNode.mapping:
  19: 	METHOD equals (Ljava/lang/Object;)Z
  20: 		ARG 1 o

mappings\net\minecraft\entity\attribute\EntityAttributeModifier.mapping:
  21: 	METHOD equals (Ljava/lang/Object;)Z
  22: 		ARG 1 o

mappings\net\minecraft\entity\data\TrackedData.mapping:
  7: 	METHOD equals (Ljava/lang/Object;)Z
  8: 		ARG 1 o

mappings\net\minecraft\entity\effect\StatusEffectInstance.mapping:
  50: 	METHOD equals (Ljava/lang/Object;)Z
  51: 		ARG 1 o

mappings\net\minecraft\item\map\MapBannerMarker.mapping:
  12: 	METHOD equals (Ljava/lang/Object;)Z
  13: 		ARG 1 o

mappings\net\minecraft\item\map\MapIcon.mapping:
  13: 	METHOD equals (Ljava/lang/Object;)Z
  14: 		ARG 1 o

mappings\net\minecraft\loot\provider\number\ConstantLootNumberProvider.mapping:
  5: 	METHOD equals (Ljava/lang/Object;)Z
  6: 		ARG 1 object

mappings\net\minecraft\nbt\NbtByte.mapping:
   9: 	METHOD equals (Ljava/lang/Object;)Z
  10: 		ARG 1 o

mappings\net\minecraft\nbt\NbtByteArray.mapping:
   9: 	METHOD equals (Ljava/lang/Object;)Z
  10: 		ARG 1 o

mappings\net\minecraft\nbt\NbtCompound.mapping:
  8: 	METHOD equals (Ljava/lang/Object;)Z
  9: 		ARG 1 o

mappings\net\minecraft\nbt\NbtDouble.mapping:
  8: 	METHOD equals (Ljava/lang/Object;)Z
  9: 		ARG 1 o

mappings\net\minecraft\nbt\NbtFloat.mapping:
  8: 	METHOD equals (Ljava/lang/Object;)Z
  9: 		ARG 1 o

mappings\net\minecraft\nbt\NbtInt.mapping:
  7: 	METHOD equals (Ljava/lang/Object;)Z
  8: 		ARG 1 o

mappings\net\minecraft\nbt\NbtIntArray.mapping:
   9: 	METHOD equals (Ljava/lang/Object;)Z
  10: 		ARG 1 o

mappings\net\minecraft\nbt\NbtList.mapping:
  13: 	METHOD equals (Ljava/lang/Object;)Z
  14: 		ARG 1 o

mappings\net\minecraft\nbt\NbtLong.mapping:
  7: 	METHOD equals (Ljava/lang/Object;)Z
  8: 		ARG 1 o

mappings\net\minecraft\nbt\NbtLongArray.mapping:
  11: 	METHOD equals (Ljava/lang/Object;)Z
  12: 		ARG 1 o

mappings\net\minecraft\nbt\NbtShort.mapping:
  7: 	METHOD equals (Ljava/lang/Object;)Z
  8: 		ARG 1 o

mappings\net\minecraft\nbt\NbtString.mapping:
  8: 	METHOD equals (Ljava/lang/Object;)Z
  9: 		ARG 1 o

mappings\net\minecraft\resource\ResourceImpl.mapping:
  13: 	METHOD equals (Ljava/lang/Object;)Z
  14: 		ARG 1 o

mappings\net\minecraft\resource\ResourcePackProfile.mapping:
  40: 	METHOD equals (Ljava/lang/Object;)Z
  41: 		ARG 1 o

mappings\net\minecraft\server\world\BlockEvent.mapping:
  11: 	METHOD equals (Ljava/lang/Object;)Z
  12: 		ARG 1 o

mappings\net\minecraft\server\world\ChunkTicket.mapping:
  13: 	METHOD equals (Ljava/lang/Object;)Z
  14: 		ARG 1 obj

mappings\net\minecraft\server\world\ThreadedAnvilChunkStorage.mapping:
  165: 		METHOD equals (Ljava/lang/Object;)Z
  166: 			ARG 1 o

mappings\net\minecraft\stat\Stat.mapping:
   9: 	METHOD equals (Ljava/lang/Object;)Z
  10: 		ARG 1 o

mappings\net\minecraft\state\property\Property.mapping:
  10: 	METHOD equals (Ljava/lang/Object;)Z
  11: 		ARG 1 o
  36: 		METHOD equals (Ljava/lang/Object;)Z
  37: 			ARG 1 o

mappings\net\minecraft\structure\JigsawJunction.mapping:
  13: 	METHOD equals (Ljava/lang/Object;)Z
  14: 		ARG 1 o

mappings\net\minecraft\text\BaseText.mapping:
  6: 	METHOD equals (Ljava/lang/Object;)Z
  7: 		ARG 1 obj

mappings\net\minecraft\text\ClickEvent.mapping:
  7: 	METHOD equals (Ljava/lang/Object;)Z
  8: 		ARG 1 obj

mappings\net\minecraft\text\HoverEvent.mapping:
  8: 	METHOD equals (Ljava/lang/Object;)Z
  9: 		ARG 1 obj

mappings\net\minecraft\text\Style.mapping:
  33: 	METHOD equals (Ljava/lang/Object;)Z
  34: 		ARG 1 obj

mappings\net\minecraft\util\Identifier.mapping:
  23: 	METHOD equals (Ljava/lang/Object;)Z
  24: 		ARG 1 other

mappings\net\minecraft\util\collection\Weight.mapping:
  8: 	METHOD equals (Ljava/lang/Object;)Z
  9: 		ARG 1 o

mappings\net\minecraft\util\dynamic\Codecs.mapping:
  37: 		METHOD equals (Ljava/lang/Object;)Z
  38: 			ARG 1 o

mappings\net\minecraft\util\dynamic\GlobalPos.mapping:
  8: 	METHOD equals (Ljava/lang/Object;)Z
  9: 		ARG 1 o

mappings\net\minecraft\util\math\BlockBox.mapping:
  31: 	METHOD equals (Ljava/lang/Object;)Z
  32: 		ARG 1 o

mappings\net\minecraft\util\math\Box.mapping:
  23: 	METHOD equals (Ljava/lang/Object;)Z
  24: 		ARG 1 o

mappings\net\minecraft\util\math\ChunkPos.mapping:
  12: 	METHOD equals (Ljava/lang/Object;)Z
  13: 		ARG 1 o

mappings\net\minecraft\util\math\EulerAngle.mapping:
  11: 	METHOD equals (Ljava/lang/Object;)Z
  12: 		ARG 1 o

mappings\net\minecraft\util\math\Matrix3f.mapping:
  23: 	METHOD equals (Ljava/lang/Object;)Z
  24: 		ARG 1 object

mappings\net\minecraft\util\math\Matrix4f.mapping:
  24: 	METHOD equals (Ljava/lang/Object;)Z
  25: 		ARG 1 o

mappings\net\minecraft\util\math\Quaternion.mapping:
  23: 	METHOD equals (Ljava/lang/Object;)Z
  24: 		ARG 1 o

mappings\net\minecraft\util\math\Vec3d.mapping:
  13: 	METHOD equals (Ljava/lang/Object;)Z
  14: 		ARG 1 o

mappings\net\minecraft\util\math\Vec3f.mapping:
  19: 	METHOD equals (Ljava/lang/Object;)Z
  20: 		ARG 1 o

mappings\net\minecraft\util\math\Vec3i.mapping:
  18: 	METHOD equals (Ljava/lang/Object;)Z
  19: 		ARG 1 o

mappings\net\minecraft\util\math\Vector4f.mapping:
  15: 	METHOD equals (Ljava/lang/Object;)Z
  16: 		ARG 1 o

mappings\net\minecraft\util\math\floatprovider\ClampedNormalFloatProvider.mapping:
  12: 	METHOD equals (Ljava/lang/Object;)Z
  13: 		ARG 1 object

mappings\net\minecraft\util\math\floatprovider\ConstantFloatProvider.mapping:
  7: 	METHOD equals (Ljava/lang/Object;)Z
  8: 		ARG 1 object

mappings\net\minecraft\util\math\floatprovider\TrapezoidFloatProvider.mapping:
  10: 	METHOD equals (Ljava/lang/Object;)Z
  11: 		ARG 1 object

mappings\net\minecraft\util\math\floatprovider\UniformFloatProvider.mapping:
  8: 	METHOD equals (Ljava/lang/Object;)Z
  9: 		ARG 1 object

mappings\net\minecraft\util\math\intprovider\ConstantIntProvider.mapping:
  7: 	METHOD equals (Ljava/lang/Object;)Z
  8: 		ARG 1 object

mappings\net\minecraft\util\math\intprovider\UniformIntProvider.mapping:
  8: 	METHOD equals (Ljava/lang/Object;)Z
  9: 		ARG 1 object

mappings\net\minecraft\world\GameRules.mapping:
  161: 		METHOD equals (Ljava/lang/Object;)Z
  162: 			ARG 1 obj

mappings\net\minecraft\world\ScheduledTick.mapping:
  16: 	METHOD equals (Ljava/lang/Object;)Z
  17: 		ARG 1 o

mappings\net\minecraft\world\biome\Biome.mapping:
  160: 		METHOD equals (Ljava/lang/Object;)Z
  161: 			ARG 1 object

mappings\net\minecraft\world\poi\PointOfInterest.mapping:
  15: 	METHOD equals (Ljava/lang/Object;)Z
  16: 		ARG 1 obj

@enbrain enbrain added the refactor A PR that renames existing names. label Apr 9, 2021
@enbrain enbrain mentioned this issue Apr 9, 2021
@haykam821
Copy link
Contributor

Personally, I would prefer equals(Object other). Do note that java.lang.Object uses o though.

@haykam821 haykam821 added the vote A vote on a name refactor label Apr 9, 2021
@liach
Copy link
Contributor

liach commented Apr 9, 2021

I support o. other in source code is usually the local variable name used for an instance of a specific type after a getClass() == or instanceof check.

@Sollace
Copy link
Contributor

Sollace commented Apr 9, 2021

I, too, am in favour of using o. Beside it being what's used in Object#equals it's also the most commonly used across yarn, and I believe used in Mojang's open source projects and elsewhere [citation needed].

other is the old standard I used to use so I will accept blame for those being there.
object looks like people just accepting the automatic suggestion Enigma gives due to lack of an established rule.

@sfPlayer1
Copy link
Collaborator

I normally use obj in the parameter and o for the type-casted local variable

haykam821 added a commit to haykam821/yarn that referenced this issue Apr 29, 2021
@haykam821 haykam821 added the bug Fixes or discusses a bug within the mappings label Apr 29, 2021
@haykam821 haykam821 self-assigned this Apr 29, 2021
modmuss50 pushed a commit that referenced this issue Apr 29, 2021
* Make the parameter for equals methods consistent

Fixes #2299

* Add conventions for the correct parameter for equals methods
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Fixes or discusses a bug within the mappings refactor A PR that renames existing names. vote A vote on a name refactor
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants