History log of /frameworks/data-binding/compiler/src/test/java/android/databinding/tool/reflection/java/JavaAnalyzer.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
4ba16229a40e9758db86d4fb1df5119fdcb8aa2a 22-Dec-2015 Deepanshu Gupta <deepanshu@google.com> Change from commons-lang3 to guava

Change-Id: I1a18e06af7bf2d65228f1491663b6e096a9538ed
/frameworks/data-binding/compiler/src/test/java/android/databinding/tool/reflection/java/JavaAnalyzer.java
eebcbdd5d35e56a2c8ef37feeb65df46130d001d 26-Aug-2015 Yigit Boyar <yboyar@google.com> Fix the bug about marking expressions as read early

@{obj4.text}
@{obj4.useHello ? obj4.text : `hello`}

This case was broken and would not re-read obj4.text if
only obj4.useHello is invalidated. It was partially fixed in
Change-Id: Id449c8819b8dc0301a7ab893002478914780d480 but
but it was bringing it down to exact equality which would
mean we could fail to mark sth as read.

The coverage logic we use in expressions when marking them
as read was giving false positives, which results in
marking expressions as read before they are fully read.
This CL fixes that bug. The safe fix introduces some false
negatives when a conditional is behind another conditional.
We can address this post v1.

There was also another bug about setting conditional flags
even though the ternary does not need to be calculated.

@{obja.boolMethod(a)}
@{a ? objb.boolMethod(b) : objc.boolMethod(c)}

When obja is invalidated, it would re calculate the second
binding expression too even though it is never used (because
that expression is not invalidated). The re-calculation would
happen because we would calculate the value of `a` and set
the conditional flags w/o checking invalidation.

This would result in unnecessary calculations. I've also fixed
it for first degree where the ternary is not under another
ternary. The proper fix would requires bigger effort, post V1.

bug: 22957203
Change-Id: Ib73f31eac358f2ad7652395a021baaa93b79adf7
/frameworks/data-binding/compiler/src/test/java/android/databinding/tool/reflection/java/JavaAnalyzer.java
2611838bffef5a009ca71e3e9e59a93f29b098ed 24-Jun-2015 Yigit Boyar <yboyar@google.com> Remove guava from compiler

This CL removes all dependency from guava and replaces it w/ either plain
java or some utilities.

Bug: 22047836
Change-Id: I94be54ed992ab6b5f27c47a8cf400ae60aef02f8
/frameworks/data-binding/compiler/src/test/java/android/databinding/tool/reflection/java/JavaAnalyzer.java
924fa7c597694ebc433fc0379d0015785351d1b7 23-Jun-2015 Yigit Boyar <yboyar@google.com> Fix compiler tests

Compiler tests were broken after the parcelable change.
JavaClassLoader cannot access Parcelable when resolving ObservableXX
from the library. Compiler tests do not need to resolve Observables
so in this CL I override the related method to avoid trying to
load them.
I've also removed the requirement to deploy a libraryJar from the
library. Instead, compiler will directly include the library
sources when it is being compiled for tests.
/frameworks/data-binding/compiler/src/test/java/android/databinding/tool/reflection/java/JavaAnalyzer.java
fead9ca09b117136b35bc5bf137340a754f9eddd 23-Mar-2015 George Mount <mount@google.com> Move to package android.databinding.
/frameworks/data-binding/compiler/src/test/java/android/databinding/tool/reflection/java/JavaAnalyzer.java