History log of /frameworks/data-binding/integration-tests/TestApp/app/src/main/java/android/databinding/testapp/vo/BasicObject.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
88ce44ccc65e74a8553244ca246cc9f4c48483e0 15-Oct-2015 Yigit Boyar <yboyar@google.com> Create BR id from Callable

This CL fixes a bug where if an expression maps into a method
with a different name, we would create the BR id from the
expression instead of the referenced method.

Bug: 24973950
Change-Id: Ia57c31d926a737c9fc84775780aeb5e617769d43
/frameworks/data-binding/integration-tests/TestApp/app/src/main/java/android/databinding/testapp/vo/BasicObject.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/integration-tests/TestApp/app/src/main/java/android/databinding/testapp/vo/BasicObject.java
74f72d77b1db2b78ee6422da2ec94de12edcb6dc 27-Mar-2015 Yigit Boyar <yboyar@google.com> Fix bugs related to how we handle Ternary ops

This CL fixes two bugs.
1) When a Ternary operation was inside another operation, we were
not handling dependecies properly and model would think that
the container expression can be evaluated before Ternary is evaluated,
eventually causing an exception in code-gen because Ternay is not
calculated yet.

2) This also fixes another bug where when ?? is used, we would put
ifTrue and ifFalse statements in wrong order and eventually evaluate
!??.

Bug: 19939148

Change-Id: I3e1d2bee172e47412bb8ef9e7c785aef47337155
/frameworks/data-binding/integration-tests/TestApp/app/src/main/java/android/databinding/testapp/vo/BasicObject.java