diff options
Diffstat (limited to 'compiler/src/main/java/android/databinding/tool/expr/InstanceOfExpr.java')
-rw-r--r-- | compiler/src/main/java/android/databinding/tool/expr/InstanceOfExpr.java | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/compiler/src/main/java/android/databinding/tool/expr/InstanceOfExpr.java b/compiler/src/main/java/android/databinding/tool/expr/InstanceOfExpr.java index 980d6356..8783d0e7 100644 --- a/compiler/src/main/java/android/databinding/tool/expr/InstanceOfExpr.java +++ b/compiler/src/main/java/android/databinding/tool/expr/InstanceOfExpr.java @@ -37,14 +37,19 @@ public class InstanceOfExpr extends Expr { } @Override - protected KCode generateCode(boolean expand) { + protected KCode generateCode() { return new KCode() - .app("", getExpr().toCode(expand)) + .app("", getExpr().toCode()) .app(" instanceof ") .app(getType().toJavaCode()); } @Override + public Expr cloneToModel(ExprModel model) { + return model.instanceOfOp(getExpr().cloneToModel(model), mTypeStr); + } + + @Override protected ModelClass resolveType(ModelAnalyzer modelAnalyzer) { mType = modelAnalyzer.findClass(mTypeStr, getModel().getImports()); return modelAnalyzer.loadPrimitive("boolean"); @@ -67,4 +72,9 @@ public class InstanceOfExpr extends Expr { public String getInvertibleError() { return "two-way binding can't target a value with the 'instanceof' operator"; } + + @Override + public String toString() { + return getExpr().toString() + " instanceof " + mTypeStr; + } } |