Package android.databinding.tool.expr
Class MethodCallExpr
- java.lang.Object
-
- android.databinding.tool.expr.Expr
-
- android.databinding.tool.expr.MethodCallExpr
-
- All Implemented Interfaces:
android.databinding.tool.expr.VersionProvider,android.databinding.tool.processing.scopes.LocationScopeProvider,android.databinding.tool.processing.scopes.ScopeProvider
public class MethodCallExpr extends Expr
-
-
Field Summary
-
Fields inherited from class android.databinding.tool.expr.Expr
KEY_END, KEY_JOIN, KEY_JOIN_END, KEY_JOIN_START, KEY_START, mChildren, NO_ID
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ExprcloneToModel(ExprModel model)protected java.lang.StringcomputeUniqueKey()protected java.util.List<Dependency>constructDependencies()protected android.databinding.tool.writer.KCodegenerateCode()ExprgenerateInverse(ExprModel model, Expr value, java.lang.String bindingClassName)java.util.List<Expr>getArgs()CallablegetGetter()java.lang.StringgetInvertibleError()java.lang.StringgetName()ExprgetTarget()voidinjectSafeUnboxing(android.databinding.tool.reflection.ModelAnalyzer modelAnalyzer, ExprModel model)Called after experiment model is sealed to avoid NPE problems caused by boxed primitives.protected voidresetResolvedType()protected android.databinding.tool.reflection.ModelClassresolveType(android.databinding.tool.reflection.ModelAnalyzer modelAnalyzer)voidsetAllowProtected()java.util.List<ExecutionPath>toExecutionPath(java.util.List<ExecutionPath> paths)java.lang.StringtoString()protected voidunwrapObservableFieldChildren()Check for method signature match.voidupdateExpr(android.databinding.tool.reflection.ModelAnalyzer modelAnalyzer)-
Methods inherited from class android.databinding.tool.expr.Expr
addJustMeToExecutionPath, addLocation, asPackage, assertIsInvertible, canBeEvaluatedToAVariable, canBeInvalidated, cloneToModel, considerElevatingConditionals, constructDynamicChildrenDependencies, enableDirectInvalidation, getAllCalculationPaths, getChildren, getDefaultValue, getDependants, getDependencies, getId, getInvalidFlags, getLocations, getModel, getParents, getPredicateInvalidFlags, getReadSoFar, getRequirementFlagIndex, getRequirementId, getResolvedType, getShouldReadFlags, getShouldReadFlagsWithConditionals, getUniqueKey, getUpdateRegistrationCall, getVersion, hasConditionalDependant, hasId, hasNestedCannotRead, invalidateReadFlags, isBindingExpression, isConditional, isDynamic, isEqualityCheck, isIsUsedInCallback, isObservable, isRead, isUsed, join, join, markAsBindingExpression, markAsReadIfDone, markAsUsed, markAsUsedInCallback, markFlagsAsRead, onSwappedWith, provideScopeLocation, recursivelyInjectSafeUnboxing, resolveListeners, resolveTwoWayExpressions, safeUnboxChild, setId, setModel, setRequirementId, setUnwrapObservableFields, shouldReadNow, toCode, toExecutionPath, toExecutionPathInOrder, toExecutionPathInOrder, toFullCode, trimShouldReadFlags, unwrapChildTo, unwrapObservableField
-
-
-
-
Method Detail
-
updateExpr
public void updateExpr(android.databinding.tool.reflection.ModelAnalyzer modelAnalyzer)
- Overrides:
updateExprin classExpr
-
generateCode
protected android.databinding.tool.writer.KCode generateCode()
- Specified by:
generateCodein classExpr
-
cloneToModel
public Expr cloneToModel(ExprModel model)
- Specified by:
cloneToModelin classExpr
-
toExecutionPath
public java.util.List<ExecutionPath> toExecutionPath(java.util.List<ExecutionPath> paths)
- Overrides:
toExecutionPathin classExpr
-
injectSafeUnboxing
public void injectSafeUnboxing(android.databinding.tool.reflection.ModelAnalyzer modelAnalyzer, ExprModel model)Description copied from class:ExprCalled after experiment model is sealed to avoid NPE problems caused by boxed primitives.- Specified by:
injectSafeUnboxingin classExpr
-
resetResolvedType
protected void resetResolvedType()
- Overrides:
resetResolvedTypein classExpr
-
resolveType
protected android.databinding.tool.reflection.ModelClass resolveType(android.databinding.tool.reflection.ModelAnalyzer modelAnalyzer)
- Specified by:
resolveTypein classExpr
-
unwrapObservableFieldChildren
protected void unwrapObservableFieldChildren()
Check for method signature match. Unwrap the children just enough to find a signature match with the arguments. Always prefer an exact signature match. If multiple match, we'll just choose the (arbitrarily) first matching method.- Overrides:
unwrapObservableFieldChildrenin classExpr
-
constructDependencies
protected java.util.List<Dependency> constructDependencies()
- Specified by:
constructDependenciesin classExpr
-
computeUniqueKey
protected java.lang.String computeUniqueKey()
- Specified by:
computeUniqueKeyin classExpr
-
getTarget
public Expr getTarget()
-
getName
public java.lang.String getName()
-
getArgs
public java.util.List<Expr> getArgs()
-
getGetter
public Callable getGetter()
-
setAllowProtected
public void setAllowProtected()
-
getInvertibleError
public java.lang.String getInvertibleError()
- Specified by:
getInvertibleErrorin classExpr- Returns:
- The reason the expression wasn't invertible or null if it was invertible.
-
generateInverse
public Expr generateInverse(ExprModel model, Expr value, java.lang.String bindingClassName)
- Overrides:
generateInversein classExpr
-
-