Mercurial > hg > truffle
diff graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/expression/DSLExpression.java @ 19348:ef292a5bb79d
Truffle-DSL: fix findbugs comparison warnings.
author | Christian Humer <christian.humer@gmail.com> |
---|---|
date | Fri, 13 Feb 2015 11:37:13 +0100 |
parents | 244f1b50be4c |
children |
line wrap: on
line diff
--- a/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/expression/DSLExpression.java Fri Feb 13 11:37:13 2015 +0100 +++ b/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/expression/DSLExpression.java Fri Feb 13 11:37:13 2015 +0100 @@ -23,6 +23,7 @@ package com.oracle.truffle.dsl.processor.expression; import java.util.*; +import java.util.concurrent.atomic.*; import javax.lang.model.element.*; import javax.lang.model.type.*; @@ -68,6 +69,19 @@ return variables; } + public boolean containsComparisons() { + final AtomicBoolean found = new AtomicBoolean(); + this.accept(new AbstractDSLExpressionVisitor() { + @Override + public void visitBinary(Binary binary) { + if (binary.isComparison()) { + found.set(true); + } + } + }); + return found.get(); + } + public void setResolvedTargetType(TypeMirror resolvedTargetType) { this.resolvedTargetType = resolvedTargetType; } @@ -131,6 +145,10 @@ this.right = right; } + public boolean isComparison() { + return DSLExpressionResolver.COMPARABLE_OPERATORS.contains(operator) || DSLExpressionResolver.IDENTITY_OPERATORS.contains(operator); + } + @Override public boolean equals(Object obj) { if (obj instanceof Binary) {