|
||||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectorg.eclipse.jdt.internal.compiler.ast.ASTNode
org.eclipse.jdt.internal.compiler.ast.Statement
org.eclipse.jdt.internal.compiler.ast.Expression
org.eclipse.jdt.internal.compiler.ast.OperatorExpression
org.eclipse.jdt.internal.compiler.ast.BinaryExpression
public class BinaryExpression
| 字段摘要 | |
|---|---|
Expression |
left
|
Constant |
optimizedBooleanConstant
|
Expression |
right
|
| 从类 org.eclipse.jdt.internal.compiler.ast.OperatorExpression 继承的字段 |
|---|
OperatorSignatures |
| 从类 org.eclipse.jdt.internal.compiler.ast.Expression 继承的字段 |
|---|
constant, implicitConversion, resolvedType, statementEnd |
| 从类 org.eclipse.jdt.internal.compiler.ast.Statement 继承的字段 |
|---|
COMPLAINED_FAKE_REACHABLE, COMPLAINED_UNREACHABLE, NOT_COMPLAINED |
| 从接口 org.eclipse.jdt.internal.compiler.ast.OperatorIds 继承的字段 |
|---|
AND, AND_AND, DIVIDE, EQUAL, EQUAL_EQUAL, GREATER, GREATER_EQUAL, INSTANCEOF, LEFT_SHIFT, LESS, LESS_EQUAL, MINUS, MINUS_MINUS, MULTIPLY, NOT, NOT_EQUAL, NumberOfTables, OR, OR_OR, PLUS, PLUS_PLUS, QUESTIONCOLON, REMAINDER, RIGHT_SHIFT, TWIDDLE, UNSIGNED_RIGHT_SHIFT, XOR |
| 构造方法摘要 | |
|---|---|
BinaryExpression(BinaryExpression expression)
|
|
BinaryExpression(Expression left,
Expression right,
int operator)
|
|
| 方法摘要 | |
|---|---|
FlowInfo |
analyseCode(BlockScope currentScope,
FlowContext flowContext,
FlowInfo flowInfo)
|
void |
computeConstant(BlockScope scope,
int leftId,
int rightId)
|
void |
generateCode(BlockScope currentScope,
CodeStream codeStream,
boolean valueRequired)
Code generation for a binary operation |
void |
generateLogicalAnd(BlockScope currentScope,
CodeStream codeStream,
boolean valueRequired)
Boolean generation for & |
void |
generateLogicalOr(BlockScope currentScope,
CodeStream codeStream,
boolean valueRequired)
Boolean generation for | |
void |
generateLogicalXor(BlockScope currentScope,
CodeStream codeStream,
boolean valueRequired)
Boolean generation for ^ |
void |
generateOptimizedBoolean(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
Boolean operator code generation Optimized operations are: <, <=, >, >=, &, |, ^ |
void |
generateOptimizedGreaterThan(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
Boolean generation for > |
void |
generateOptimizedGreaterThanOrEqual(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
Boolean generation for >= |
void |
generateOptimizedLessThan(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
Boolean generation for < |
void |
generateOptimizedLessThanOrEqual(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
Boolean generation for <= |
void |
generateOptimizedLogicalAnd(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
Boolean generation for & |
void |
generateOptimizedLogicalOr(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
Boolean generation for | |
void |
generateOptimizedLogicalXor(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
Boolean generation for ^ |
void |
generateOptimizedStringConcatenation(BlockScope blockScope,
CodeStream codeStream,
int typeID)
|
void |
generateOptimizedStringConcatenationCreation(BlockScope blockScope,
CodeStream codeStream,
int typeID)
|
boolean |
isCompactableOperation()
|
Constant |
optimizedBooleanConstant()
Constant usable for bytecode pattern optimizations, but cannot be inlined since it is not strictly equivalent to the definition of constant expressions. |
void |
optimizedBooleanConstant(int leftId,
int operator,
int rightId)
|
StringBuffer |
printExpressionNoParenthesis(int indent,
StringBuffer output)
|
TypeBinding |
resolveType(BlockScope scope)
Resolve the type of this expression in the context of a blockScope |
void |
traverse(ASTVisitor visitor,
BlockScope scope)
Traverse an expression in the context of a blockScope |
| 从类 org.eclipse.jdt.internal.compiler.ast.OperatorExpression 继承的方法 |
|---|
classInitialize, generateTableTestCase, get_AND_AND, get_AND, get_DIVIDE, get_EQUAL_EQUAL, get_GREATER_EQUAL, get_GREATER, get_LEFT_SHIFT, get_LESS_EQUAL, get_LESS, get_MINUS, get_MULTIPLY, get_OR_OR, get_OR, get_PLUS, get_REMAINDER, get_RIGHT_SHIFT, get_UNSIGNED_RIGHT_SHIFT, get_XOR, nullStatus, operatorToString, printExpression |
| 从类 org.eclipse.jdt.internal.compiler.ast.Statement 继承的方法 |
|---|
branchChainTo, checkAgainstNullAnnotation, complainIfUnreachable, expectedType, generateArguments, isBoxingCompatible, isEmptyBlock, isKnowDeadCodePattern, isValidJavaStatement, resolveCase |
| 从类 org.eclipse.jdt.internal.compiler.ast.ASTNode 继承的方法 |
|---|
checkInvocationArguments, concreteStatement, isFieldUseDeprecated, isImplicitThis, isMethodUseDeprecated, isSuper, isThis, isTypeUseDeprecated, printAnnotations, printIndent, printModifiers, resolveAnnotations, resolveDeprecatedAnnotations, sourceEnd, sourceStart, toString |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| 字段详细信息 |
|---|
public Expression left
public Expression right
public Constant optimizedBooleanConstant
| 构造方法详细信息 |
|---|
public BinaryExpression(Expression left,
Expression right,
int operator)
public BinaryExpression(BinaryExpression expression)
| 方法详细信息 |
|---|
public FlowInfo analyseCode(BlockScope currentScope,
FlowContext flowContext,
FlowInfo flowInfo)
Expression 中的 analyseCode
public void computeConstant(BlockScope scope,
int leftId,
int rightId)
public Constant optimizedBooleanConstant()
Expression 复制的描述
Expression 中的 optimizedBooleanConstant
public void generateCode(BlockScope currentScope,
CodeStream codeStream,
boolean valueRequired)
Expression 中的 generateCodecurrentScope - org.eclipse.jdt.internal.compiler.lookup.BlockScopecodeStream - org.eclipse.jdt.internal.compiler.codegen.CodeStreamvalueRequired - boolean
public void generateOptimizedBoolean(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
Expression 中的 generateOptimizedBoolean
public void generateOptimizedGreaterThan(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
public void generateOptimizedGreaterThanOrEqual(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
public void generateOptimizedLessThan(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
public void generateOptimizedLessThanOrEqual(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
public void generateLogicalAnd(BlockScope currentScope,
CodeStream codeStream,
boolean valueRequired)
public void generateLogicalOr(BlockScope currentScope,
CodeStream codeStream,
boolean valueRequired)
public void generateLogicalXor(BlockScope currentScope,
CodeStream codeStream,
boolean valueRequired)
public void generateOptimizedLogicalAnd(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
public void generateOptimizedLogicalOr(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
public void generateOptimizedLogicalXor(BlockScope currentScope,
CodeStream codeStream,
BranchLabel trueLabel,
BranchLabel falseLabel,
boolean valueRequired)
public void generateOptimizedStringConcatenation(BlockScope blockScope,
CodeStream codeStream,
int typeID)
Expression 中的 generateOptimizedStringConcatenation
public void generateOptimizedStringConcatenationCreation(BlockScope blockScope,
CodeStream codeStream,
int typeID)
Expression 中的 generateOptimizedStringConcatenationCreationpublic boolean isCompactableOperation()
Expression 中的 isCompactableOperation
public void optimizedBooleanConstant(int leftId,
int operator,
int rightId)
public StringBuffer printExpressionNoParenthesis(int indent,
StringBuffer output)
OperatorExpression 中的 printExpressionNoParenthesispublic TypeBinding resolveType(BlockScope scope)
Expression 复制的描述
Expression 中的 resolveType
public void traverse(ASTVisitor visitor,
BlockScope scope)
Expression 复制的描述
Expression 中的 traverse
|
||||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||