类 ReplaceFieldComparisonWithInstanceOf
java.lang.Object
net.neoforged.neoforge.coremods.ReplaceFieldComparisonWithInstanceOf
- 所有已实现的接口:
cpw.mods.modlauncher.api.ITransformer<org.objectweb.asm.tree.MethodNode>
public class ReplaceFieldComparisonWithInstanceOf
extends Object
implements cpw.mods.modlauncher.api.ITransformer<org.objectweb.asm.tree.MethodNode>
Replaces code such as
itemstack.getItem() == Items.CROSSBOW
with instanceof checks such
as itemstack.getItem() instanceof CrossbowItem
.
This transformer targets a set of methods to replace the occurrence of a single field-comparison.-
嵌套类概要
从接口继承的嵌套类/接口 cpw.mods.modlauncher.api.ITransformer
cpw.mods.modlauncher.api.ITransformer.Target<T>
-
字段概要
字段修饰符和类型字段说明private final String
private final String
private static final org.slf4j.Logger
private final String
private final Set
<cpw.mods.modlauncher.api.ITransformer.Target<org.objectweb.asm.tree.MethodNode>> 从接口继承的字段 cpw.mods.modlauncher.api.ITransformer
DEFAULT_LABEL
-
构造器概要
构造器构造器说明ReplaceFieldComparisonWithInstanceOf
(String fieldOwner, String fieldName, String replacementClassName, List<cpw.mods.modlauncher.api.ITransformer.Target<org.objectweb.asm.tree.MethodNode>> methodsToScan) -
方法概要
修饰符和类型方法说明cpw.mods.modlauncher.api.TransformerVoteResult
castVote
(cpw.mods.modlauncher.api.ITransformerVotingContext context) cpw.mods.modlauncher.api.TargetType
<org.objectweb.asm.tree.MethodNode> Set
<cpw.mods.modlauncher.api.ITransformer.Target<org.objectweb.asm.tree.MethodNode>> targets()
org.objectweb.asm.tree.MethodNode
transform
(org.objectweb.asm.tree.MethodNode methodNode, cpw.mods.modlauncher.api.ITransformerVotingContext votingContext) 从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
从接口继承的方法 cpw.mods.modlauncher.api.ITransformer
labels
-
字段详细资料
-
LOG
private static final org.slf4j.Logger LOG -
targets
private final Set<cpw.mods.modlauncher.api.ITransformer.Target<org.objectweb.asm.tree.MethodNode>> targets -
fieldOwner
-
fieldName
-
replacementClassName
-
-
构造器详细资料
-
ReplaceFieldComparisonWithInstanceOf
public ReplaceFieldComparisonWithInstanceOf(String fieldOwner, String fieldName, String replacementClassName, List<cpw.mods.modlauncher.api.ITransformer.Target<org.objectweb.asm.tree.MethodNode>> methodsToScan) - 参数:
fieldOwner
- The class that ownsfieldName
fieldName
- The name of a field infieldOwner
replacementClassName
- Reference comparisons againstfieldName
infieldOwner
are replaced by instanceof checks against this class.methodsToScan
- The methods to scan
-
-
方法详细资料
-
getTargetType
public cpw.mods.modlauncher.api.TargetType<org.objectweb.asm.tree.MethodNode> getTargetType()- 指定者:
getTargetType
在接口中cpw.mods.modlauncher.api.ITransformer<org.objectweb.asm.tree.MethodNode>
-
targets
public Set<cpw.mods.modlauncher.api.ITransformer.Target<org.objectweb.asm.tree.MethodNode>> targets()- 指定者:
targets
在接口中cpw.mods.modlauncher.api.ITransformer<org.objectweb.asm.tree.MethodNode>
-
transform
public org.objectweb.asm.tree.MethodNode transform(org.objectweb.asm.tree.MethodNode methodNode, cpw.mods.modlauncher.api.ITransformerVotingContext votingContext) - 指定者:
transform
在接口中cpw.mods.modlauncher.api.ITransformer<org.objectweb.asm.tree.MethodNode>
-
castVote
public cpw.mods.modlauncher.api.TransformerVoteResult castVote(cpw.mods.modlauncher.api.ITransformerVotingContext context) - 指定者:
castVote
在接口中cpw.mods.modlauncher.api.ITransformer<org.objectweb.asm.tree.MethodNode>
-