android.databinding.tool.expr
Class ArgListExpr
java.lang.Object
android.databinding.tool.expr.Expr
android.databinding.tool.expr.ArgListExpr
- All Implemented Interfaces:
- VersionProvider, android.databinding.tool.processing.scopes.LocationScopeProvider, android.databinding.tool.processing.scopes.ScopeProvider
public class ArgListExpr
- extends Expr
This is a special expression that is created when we have an adapter that has multiple
parameters.
When it is detected, we create a new binding with this argument list expression and merge N
bindings into a new one so that rest of the code generation logic works as expected.
Methods inherited from class android.databinding.tool.expr.Expr |
addLocation, addTwoWay, asPackage, assertIsInvertible, canBeInvalidated, computeChildrenKey, considerElevatingConditionals, constructDynamicChildrenDependencies, enableDirectInvalidation, getAllCalculationPaths, getChildren, getDefaultValue, getDependants, getDependencies, getId, getInvalidFlags, getLocations, getModel, getParents, getPredicateInvalidFlags, getReadSoFar, getRequirementFlagIndex, getRequirementId, getResolvedType, getShouldReadFlags, getShouldReadFlagsWithConditionals, getUniqueKey, getVersion, hasConditionalDependant, hasId, hasNestedCannotRead, invalidateReadFlags, isBindingExpression, isConditional, isDynamic, isEqualityCheck, isObservable, isRead, isTwoWay, isUsed, join, join, markAsReadIfDone, markFlagsAsRead, onSwappedWith, provideScopeLocation, resetResolvedType, resolveListeners, resolveTwoWayExpressions, setBindingExpression, setId, setIsUsed, setModel, setRequirementId, setTwoWay, shouldReadNow, toCode, toCode, toFullCode, toInverseCode, toString, trimShouldReadFlags, updateExpr |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
ArgListExpr
public ArgListExpr(int id,
java.lang.Iterable<Expr> children)
computeUniqueKey
protected java.lang.String computeUniqueKey()
- Overrides:
computeUniqueKey
in class Expr
generateCode
protected android.databinding.tool.writer.KCode generateCode(boolean expand)
- Specified by:
generateCode
in class Expr
resolveType
protected ModelClass resolveType(ModelAnalyzer modelAnalyzer)
- Specified by:
resolveType
in class Expr
constructDependencies
protected java.util.List<Dependency> constructDependencies()
- Specified by:
constructDependencies
in class Expr
canBeEvaluatedToAVariable
public boolean canBeEvaluatedToAVariable()
- Overrides:
canBeEvaluatedToAVariable
in class Expr
getInvertibleError
public java.lang.String getInvertibleError()
- Specified by:
getInvertibleError
in class Expr
- Returns:
- The reason the expression wasn't invertible or null if it was invertible.