Package android.databinding.tool.expr
Class ExprModel
- java.lang.Object
-
- android.databinding.tool.expr.ExprModel
-
- Direct Known Subclasses:
CallbackExprModel
public class ExprModel extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description booleanenableV2java.lang.StringmodulePackagestatic java.lang.StringSAFE_UNBOX_METHOD_NAME
-
Constructor Summary
Constructors Constructor Description ExprModel(java.lang.String modulePackage, boolean enableV2)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description StaticIdentifierExpraddImport(java.lang.String alias, java.lang.String type, android.databinding.tool.store.Location location)ExprargListExpr(java.lang.Iterable<Expr> expressions)FieldAssignmentExprassignment(Expr target, java.lang.String name, Expr value)ExprbindingExpr(Expr bindingExpr)The actual thingy that is set on the binding target.BitShiftExprbitshift(Expr left, java.lang.String op, Expr right)ExprbracketExpr(Expr variableExpr, Expr argExpr)BuiltInVariableExprbuiltInVariable(java.lang.String name, java.lang.String type, java.lang.String accessCode)CallbackWrappercallbackWrapper(android.databinding.tool.reflection.ModelClass klass, ModelMethod method)ExprcastExpr(java.lang.String type, Expr expr)ComparisonExprcomparison(java.lang.String op, Expr left, Expr right)FieldAccessExprfield(Expr parent, java.lang.String name)static java.util.ArrayList<Expr>filterShouldRead(java.lang.Iterable<Expr> exprs)ExprfindFlagExpression(int flag)May return null if flag is equal to invalidate any flag.IdentifierExprfindIdentifier(java.lang.String name)java.util.List<Expr>getBindingExpressions()java.util.Map<java.lang.String,CallbackWrapper>getCallbackWrappers()android.databinding.tool.store.LocationgetCurrentLocationInFile()org.antlr.v4.runtime.ParserRuleContextgetCurrentParserContext()java.util.Map<java.lang.String,Expr>getExprMap()android.databinding.tool.writer.ExprModelExtgetExt()java.lang.StringgetFlag(int id)intgetFlagBucketCount()java.lang.String[]getFlagMapping()android.databinding.tool.reflection.ImportBaggetImports()intgetInvalidateableFieldLimit()java.util.BitSetgetInvalidateAnyBitSet()intgetInvalidateAnyFlagIndex()java.util.List<Expr>getObservables()java.util.List<Expr>getPendingExpressions()intgetTotalFlagCount()ExprglobalMethodCall(java.lang.String methodName, java.util.List<Expr> args)These are global methods in the expressions.IdentifierExpridentifier(java.lang.String name)InstanceOfExprinstanceOfOp(Expr expr, java.lang.String type)LambdaExprlambdaExpr(Expr expr, CallbackExprModel callbackExprModel)ExprlistenerExpr(Expr expression, java.lang.String name, android.databinding.tool.reflection.ModelClass listenerType, ModelMethod listenerMethod)TernaryExprlogical(Expr left, java.lang.String op, Expr right)booleanmarkBitsRead()protected voidmarkSealed()MathExprmath(Expr left, java.lang.String op, Expr right)MethodCallExprmethodCall(Expr target, java.lang.String name, java.util.List<Expr> args)MethodReferenceExprmethodReference(Expr parent, java.lang.String name)intobtainCallbackId()<T extends Expr>
Tregister(T expr)Adds the expression to the list of expressions and returns it.voidremoveExpr(Expr expr)ExprresourceExpr(BindingTarget target, java.lang.String packageName, java.lang.String resourceType, java.lang.String resourceName, java.util.List<Expr> args)MethodCallExprsafeUnbox(Expr expr)voidseal()Give id to each expression.voidsetCurrentLocationInFile(android.databinding.tool.store.Location location)voidsetCurrentParserContext(org.antlr.v4.runtime.ParserRuleContext currentParserContext)intsize()StaticIdentifierExprstaticIdentifier(java.lang.String name)StaticIdentifierExprstaticIdentifierFor(android.databinding.tool.reflection.ModelClass modelClass)Creates a static identifier for the given class or returns the existing one.SymbolExprsymbol(java.lang.String text, java.lang.Class type)TernaryExprternary(Expr pred, Expr ifTrue, Expr ifFalse)TwoWayListenerExprtwoWayListenerExpr(InverseBinding inverseBinding)UnaryExprunary(java.lang.String op, Expr expr)IdentifierExprviewDataBinding()ViewFieldExprviewFieldExpr(BindingTarget bindingTarget)
-
-
-
Field Detail
-
SAFE_UNBOX_METHOD_NAME
public static final java.lang.String SAFE_UNBOX_METHOD_NAME
- See Also:
- Constant Field Values
-
modulePackage
public final java.lang.String modulePackage
-
enableV2
public final boolean enableV2
-
-
Method Detail
-
register
public <T extends Expr> T register(T expr)
Adds the expression to the list of expressions and returns it. If it already exists, returns existing one.- Parameters:
expr- The new parsed expression- Returns:
- The expression itself or another one if the same thing was parsed before
-
markSealed
protected void markSealed()
-
getExt
public android.databinding.tool.writer.ExprModelExt getExt()
-
obtainCallbackId
public int obtainCallbackId()
-
setCurrentParserContext
public void setCurrentParserContext(org.antlr.v4.runtime.ParserRuleContext currentParserContext)
-
getCurrentParserContext
public org.antlr.v4.runtime.ParserRuleContext getCurrentParserContext()
-
getCurrentLocationInFile
public android.databinding.tool.store.Location getCurrentLocationInFile()
-
getExprMap
public java.util.Map<java.lang.String,Expr> getExprMap()
-
size
public int size()
-
comparison
public ComparisonExpr comparison(java.lang.String op, Expr left, Expr right)
-
instanceOfOp
public InstanceOfExpr instanceOfOp(Expr expr, java.lang.String type)
-
field
public FieldAccessExpr field(Expr parent, java.lang.String name)
-
methodReference
public MethodReferenceExpr methodReference(Expr parent, java.lang.String name)
-
symbol
public SymbolExpr symbol(java.lang.String text, java.lang.Class type)
-
ternary
public TernaryExpr ternary(Expr pred, Expr ifTrue, Expr ifFalse)
-
identifier
public IdentifierExpr identifier(java.lang.String name)
-
staticIdentifier
public StaticIdentifierExpr staticIdentifier(java.lang.String name)
-
builtInVariable
public BuiltInVariableExpr builtInVariable(java.lang.String name, java.lang.String type, java.lang.String accessCode)
-
viewFieldExpr
public ViewFieldExpr viewFieldExpr(BindingTarget bindingTarget)
-
viewDataBinding
public IdentifierExpr viewDataBinding()
-
safeUnbox
public MethodCallExpr safeUnbox(Expr expr)
-
globalMethodCall
public Expr globalMethodCall(java.lang.String methodName, java.util.List<Expr> args)
These are global methods in the expressions.To keep this list under control, we validate the method name instead of just resolving to parent.
-
staticIdentifierFor
public StaticIdentifierExpr staticIdentifierFor(android.databinding.tool.reflection.ModelClass modelClass)
Creates a static identifier for the given class or returns the existing one.
-
methodCall
public MethodCallExpr methodCall(Expr target, java.lang.String name, java.util.List<Expr> args)
-
logical
public TernaryExpr logical(Expr left, java.lang.String op, Expr right)
-
bitshift
public BitShiftExpr bitshift(Expr left, java.lang.String op, Expr right)
-
resourceExpr
public Expr resourceExpr(BindingTarget target, java.lang.String packageName, java.lang.String resourceType, java.lang.String resourceName, java.util.List<Expr> args)
-
twoWayListenerExpr
public TwoWayListenerExpr twoWayListenerExpr(InverseBinding inverseBinding)
-
getBindingExpressions
public java.util.List<Expr> getBindingExpressions()
-
addImport
public StaticIdentifierExpr addImport(java.lang.String alias, java.lang.String type, android.databinding.tool.store.Location location)
-
getImports
public android.databinding.tool.reflection.ImportBag getImports()
-
bindingExpr
public Expr bindingExpr(Expr bindingExpr)
The actual thingy that is set on the binding target. Input must be already registered
-
removeExpr
public void removeExpr(Expr expr)
-
getObservables
public java.util.List<Expr> getObservables()
-
seal
public void seal()
Give id to each expression. Will be useful if we serialize.
-
getFlagBucketCount
public int getFlagBucketCount()
-
getTotalFlagCount
public int getTotalFlagCount()
-
getInvalidateableFieldLimit
public int getInvalidateableFieldLimit()
-
getFlagMapping
public java.lang.String[] getFlagMapping()
-
getFlag
public java.lang.String getFlag(int id)
-
getPendingExpressions
public java.util.List<Expr> getPendingExpressions()
-
markBitsRead
public boolean markBitsRead()
-
filterShouldRead
public static java.util.ArrayList<Expr> filterShouldRead(java.lang.Iterable<Expr> exprs)
-
findFlagExpression
public Expr findFlagExpression(int flag)
May return null if flag is equal to invalidate any flag.
-
getInvalidateAnyBitSet
public java.util.BitSet getInvalidateAnyBitSet()
-
getInvalidateAnyFlagIndex
public int getInvalidateAnyFlagIndex()
-
setCurrentLocationInFile
public void setCurrentLocationInFile(android.databinding.tool.store.Location location)
-
listenerExpr
public Expr listenerExpr(Expr expression, java.lang.String name, android.databinding.tool.reflection.ModelClass listenerType, ModelMethod listenerMethod)
-
assignment
public FieldAssignmentExpr assignment(Expr target, java.lang.String name, Expr value)
-
getCallbackWrappers
public java.util.Map<java.lang.String,CallbackWrapper> getCallbackWrappers()
-
callbackWrapper
public CallbackWrapper callbackWrapper(android.databinding.tool.reflection.ModelClass klass, ModelMethod method)
-
lambdaExpr
public LambdaExpr lambdaExpr(Expr expr, CallbackExprModel callbackExprModel)
-
findIdentifier
public IdentifierExpr findIdentifier(java.lang.String name)
-
-