cn.wensiqun.asmsupport.operators.relational
类 AbstractRelational

java.lang.Object
  继承者 cn.wensiqun.asmsupport.definition.AbstractExecuteable
      继承者 cn.wensiqun.asmsupport.operators.AbstractOperator
          继承者 cn.wensiqun.asmsupport.operators.relational.AbstractRelational
所有已实现的接口:
Executeable, Jumpable, Parameterized, PushStackable
直接已知子类:
NumericalAndReferenceRelational, NumericalRelational

public abstract class AbstractRelational
extends AbstractOperator
implements Jumpable

作者:
温斯群(Joe Wen)

字段摘要
protected  Parameterized factor1
          算数因子1
protected  Parameterized factor2
          算数因子2
protected  org.objectweb.asm.Label falseLbl
           
protected  String operator
           
protected  AClass targetClass
           
protected  org.objectweb.asm.Label trueLbl
           
 
从类 cn.wensiqun.asmsupport.operators.AbstractOperator 继承的字段
allCrement, block, insnHelper
 
构造方法摘要
protected AbstractRelational(ProgramBlock block, Parameterized factor1, Parameterized factor2)
           
 
方法摘要
 void asArgument()
          判断当前操作或者变量是否被其他操作引用
protected  void checkFactorForNumerical(AClass ftrCls)
           
protected  void defaultStackOperator()
           
 void execute()
          执行
 void executeAndJump(ControlType ctl)
           
protected  void executing()
           
protected abstract  void factorsToStack()
           
 AClass getParamterizedType()
          获取当前参数化类型的返回参数
protected  void ifCmp(org.objectweb.asm.Type type, int mode, org.objectweb.asm.Label label)
           
protected  void instructionGenerate()
           
 void loadToStack(ProgramBlock block)
          在指定程序块内将值压入栈
protected abstract  void relationalOperator()
           
protected abstract  void relationalOperatorWithInLoopCondition()
           
 void setJumpLable(org.objectweb.asm.Label lbl)
           
 
从类 cn.wensiqun.asmsupport.operators.AbstractOperator 继承的方法
afterInitProperties, autoCast, beforeInitProperties, checkAsArgument, checkOutCrement, checkUnreachableCode, firstPrepareProcess, getBlock, getCompileOrder, lastPrepareProcess, prepare, verifyArgument
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

factor1

protected Parameterized factor1
算数因子1


factor2

protected Parameterized factor2
算数因子2


operator

protected String operator

targetClass

protected AClass targetClass

trueLbl

protected org.objectweb.asm.Label trueLbl

falseLbl

protected org.objectweb.asm.Label falseLbl
构造方法详细信息

AbstractRelational

protected AbstractRelational(ProgramBlock block,
                             Parameterized factor1,
                             Parameterized factor2)
方法详细信息

checkFactorForNumerical

protected final void checkFactorForNumerical(AClass ftrCls)

loadToStack

public void loadToStack(ProgramBlock block)
从接口 PushStackable 复制的描述
在指定程序块内将值压入栈

指定者:
接口 PushStackable 中的 loadToStack

execute

public void execute()
从接口 Executeable 复制的描述
执行

指定者:
接口 Executeable 中的 execute
覆盖:
AbstractOperator 中的 execute

getParamterizedType

public AClass getParamterizedType()
从接口 Parameterized 复制的描述
获取当前参数化类型的返回参数

指定者:
接口 Parameterized 中的 getParamterizedType
返回:

asArgument

public void asArgument()
从接口 Parameterized 复制的描述
判断当前操作或者变量是否被其他操作引用

指定者:
接口 Parameterized 中的 asArgument

factorsToStack

protected abstract void factorsToStack()

setJumpLable

public void setJumpLable(org.objectweb.asm.Label lbl)
指定者:
接口 Jumpable 中的 setJumpLable

executing

protected void executing()
指定者:
AbstractOperator 中的 executing

instructionGenerate

protected void instructionGenerate()

defaultStackOperator

protected void defaultStackOperator()

executeAndJump

public final void executeAndJump(ControlType ctl)
指定者:
接口 Jumpable 中的 executeAndJump

relationalOperator

protected abstract void relationalOperator()

relationalOperatorWithInLoopCondition

protected abstract void relationalOperatorWithInLoopCondition()

ifCmp

protected void ifCmp(org.objectweb.asm.Type type,
                     int mode,
                     org.objectweb.asm.Label label)


Copyright © 2013. All Rights Reserved.