类 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>>
     
    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

      private final String fieldOwner
    • fieldName

      private final String fieldName
    • replacementClassName

      private final String 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 owns fieldName
      fieldName - The name of a field in fieldOwner
      replacementClassName - Reference comparisons against fieldName in fieldOwner 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>