android.databinding.tool.expr
Class CallbackExprModel

java.lang.Object
  extended by android.databinding.tool.expr.ExprModel
      extended by android.databinding.tool.expr.CallbackExprModel

public class CallbackExprModel
extends ExprModel

Callbacks are evaluated when event happens, not when execute pending is run. To separate their expressions, we provide a separate model for them that extends the main model. This allows them to introduce their own variables etc. without mixing them with other expressions.


Constructor Summary
CallbackExprModel(ExprModel original)
           
 
Method Summary
 StaticIdentifierExpr addImport(java.lang.String alias, java.lang.String type, android.databinding.tool.store.Location location)
           
 CallbackArgExpr callbackArg(java.lang.String name)
           
 int getArgCount()
           
 java.util.List<CallbackArgExpr> getArguments()
           
 java.util.Map<java.lang.String,java.lang.String> getImports()
           
 IdentifierExpr identifier(java.lang.String name)
           
<T extends Expr>
T
register(T expr)
          Adds the expression to the list of expressions and returns it.
 void seal()
          Give id to each expression.
 
Methods inherited from class android.databinding.tool.expr.ExprModel
argListExpr, bindingExpr, bitshift, bracketExpr, builtInVariable, callbackWrapper, castExpr, comparison, field, filterShouldRead, findFlagExpression, findIdentifier, getBindingExpressions, getCallbackWrappers, getCurrentLocationInFile, getCurrentParserContext, getExprMap, getExt, getFlag, getFlagBucketCount, getFlagMapping, getInvalidateableFieldLimit, getInvalidateAnyBitSet, getInvalidateAnyFlagIndex, getObservables, getPendingExpressions, getTotalFlagCount, group, instanceOfOp, lambdaExpr, listenerExpr, logical, markBitsRead, markSealed, math, methodCall, observableField, obtainCallbackId, removeExpr, resourceExpr, setCurrentLocationInFile, setCurrentParserContext, size, staticIdentifier, staticIdentifierFor, symbol, ternary, twoWayListenerExpr, unary, viewFieldExpr
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CallbackExprModel

public CallbackExprModel(ExprModel original)
Method Detail

getImports

public java.util.Map<java.lang.String,java.lang.String> getImports()
Overrides:
getImports in class ExprModel

addImport

public StaticIdentifierExpr addImport(java.lang.String alias,
                                      java.lang.String type,
                                      android.databinding.tool.store.Location location)
Overrides:
addImport in class ExprModel

register

public <T extends Expr> T register(T expr)
Description copied from class: ExprModel
Adds the expression to the list of expressions and returns it. If it already exists, returns existing one.

Overrides:
register in class ExprModel
Parameters:
expr - The new parsed expression
Returns:
The expression itself or another one if the same thing was parsed before

seal

public void seal()
Description copied from class: ExprModel
Give id to each expression. Will be useful if we serialize.

Overrides:
seal in class ExprModel

identifier

public IdentifierExpr identifier(java.lang.String name)
Overrides:
identifier in class ExprModel

callbackArg

public CallbackArgExpr callbackArg(java.lang.String name)

getArgCount

public int getArgCount()

getArguments

public java.util.List<CallbackArgExpr> getArguments()