android.databinding.tool
Class BindingTarget

java.lang.Object
  extended by android.databinding.tool.BindingTarget
All Implemented Interfaces:
android.databinding.tool.processing.scopes.LocationScopeProvider, android.databinding.tool.processing.scopes.ScopeProvider

public class BindingTarget
extends java.lang.Object
implements android.databinding.tool.processing.scopes.LocationScopeProvider


Constructor Summary
BindingTarget(android.databinding.tool.store.ResourceBundle.BindingTargetBundle bundle)
           
 
Method Summary
 void addBinding(java.lang.String name, Expr expr)
           
 InverseBinding addInverseBinding(java.lang.String name, SetterStore.BindingGetterCall call)
           
 java.util.List<Binding> getBindings()
           
 java.lang.String getId()
           
 java.lang.String getIncludedLayout()
           
 java.lang.String getInterfaceType()
           
 java.util.List<InverseBinding> getInverseBindings()
           
 ExprModel getModel()
           
 java.lang.String getOriginalTag()
           
 ModelClass getResolvedType()
           
 java.lang.String getTag()
           
 java.lang.String getViewClass()
           
 boolean isBinder()
           
 boolean isUsed()
           
 java.util.List<android.databinding.tool.store.Location> provideScopeLocation()
           
 void resolveCallbackParams()
           
 void resolveListeners()
           
 void resolveMultiSetters()
          Called after BindingTarget is finalized.
 void resolveTwoWayExpressions()
           
 void setModel(ExprModel model)
           
 boolean supportsTag()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BindingTarget

public BindingTarget(android.databinding.tool.store.ResourceBundle.BindingTargetBundle bundle)
Method Detail

isUsed

public boolean isUsed()

addBinding

public void addBinding(java.lang.String name,
                       Expr expr)

getInterfaceType

public java.lang.String getInterfaceType()

addInverseBinding

public InverseBinding addInverseBinding(java.lang.String name,
                                        SetterStore.BindingGetterCall call)

provideScopeLocation

public java.util.List<android.databinding.tool.store.Location> provideScopeLocation()
Specified by:
provideScopeLocation in interface android.databinding.tool.processing.scopes.LocationScopeProvider

getId

public java.lang.String getId()

getTag

public java.lang.String getTag()

getOriginalTag

public java.lang.String getOriginalTag()

getViewClass

public java.lang.String getViewClass()

getResolvedType

public ModelClass getResolvedType()

getIncludedLayout

public java.lang.String getIncludedLayout()

isBinder

public boolean isBinder()

supportsTag

public boolean supportsTag()

getBindings

public java.util.List<Binding> getBindings()

getInverseBindings

public java.util.List<InverseBinding> getInverseBindings()

getModel

public ExprModel getModel()

setModel

public void setModel(ExprModel model)

resolveListeners

public void resolveListeners()

resolveCallbackParams

public void resolveCallbackParams()

resolveTwoWayExpressions

public void resolveTwoWayExpressions()

resolveMultiSetters

public void resolveMultiSetters()
Called after BindingTarget is finalized.

We traverse all bindings and ask SetterStore to figure out if any can be combined. When N bindings are combined, they are demoted from being a binding expression and a new ArgList expression is added as the new binding expression that depends on others.