本文整理汇总了Java中org.eclipse.xtext.xbase.XBinaryOperation.getRightOperand方法的典型用法代码示例。如果您正苦于以下问题:Java XBinaryOperation.getRightOperand方法的具体用法?Java XBinaryOperation.getRightOperand怎么用?Java XBinaryOperation.getRightOperand使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.eclipse.xtext.xbase.XBinaryOperation
的用法示例。
在下文中一共展示了XBinaryOperation.getRightOperand方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: generateShortCircuitInvocation
import org.eclipse.xtext.xbase.XBinaryOperation; //导入方法依赖的package包/类
protected void generateShortCircuitInvocation(final XAbstractFeatureCall featureCall, final ITreeAppendable b) {
final XBinaryOperation binaryOperation = (XBinaryOperation) featureCall;
final XExpression leftOperand = binaryOperation.getLeftOperand();
final XExpression rightOperand = binaryOperation.getRightOperand();
declareSyntheticVariable(binaryOperation, b);
boolean isElvis = binaryOperation.getConcreteSyntaxFeatureName().equals(expressionHelper.getElvisOperator());
prepareExpression(leftOperand, b);
if(isElvis) {
b.newLine().append("if (");
toJavaExpression(leftOperand, b);
b.append(" != null) {").increaseIndentation();
b.newLine().append(b.getName(binaryOperation)).append(" = ");
toJavaExpression(leftOperand, b);
b.append(";");
} else {
b.newLine().append("if (");
if (binaryOperation.getConcreteSyntaxFeatureName().equals(expressionHelper.getAndOperator())) {
b.append("!");
}
toJavaExpression(leftOperand, b);
b.append(") {").increaseIndentation();
b.newLine().append(b.getName(binaryOperation)).append(" = ");
b.append(Boolean.toString(binaryOperation.getConcreteSyntaxFeatureName().equals(expressionHelper.getOrOperator()))).append(";");
}
b.decreaseIndentation().newLine().append("} else {").increaseIndentation();
if (binaryOperation.getImplicitReceiver() != null) {
internalToJavaStatement(binaryOperation.getImplicitReceiver(), b, true);
}
prepareExpression(rightOperand, b);
b.newLine().append(b.getName(binaryOperation)).append(" = ");
toJavaExpression(rightOperand, b);
b.append(";");
b.decreaseIndentation().newLine().append("}");
}