Package soot.JastAddJ

Class Expr

    • Field Detail

      • false_label_computed

        protected boolean false_label_computed
      • false_label_value

        protected Stmt false_label_value
      • true_label_computed

        protected boolean true_label_computed
      • true_label_value

        protected Stmt true_label_value
    • Constructor Detail

      • Expr

        public Expr()
    • Method Detail

      • keepAccessibleFields

        public SimpleSet keepAccessibleFields​(SimpleSet oldSet)
        Remove fields that are not accessible when using this Expr as qualifier
        Returns:
        a set containing the accessible fields
      • mayAccess

        public boolean mayAccess​(FieldDeclaration f)
        Returns:
        true if the expression may access the given field
        See Also:
        "JLS $6.6.2.1"
      • qualifiesAccess

        public Dot qualifiesAccess​(Access access)
      • emitBooleanCondition

        protected Value emitBooleanCondition​(Body b)
      • refined_BooleanExpressions_Expr_emitEvalBranch

        public void refined_BooleanExpressions_Expr_emitEvalBranch​(Body b)
      • init$Children

        public void init$Children()
        Initializes the child array to the correct size. Initializes List and Opt nta children.
        Overrides:
        init$Children in class ASTNode<ASTNode>
      • emitEvalBranch

        public void emitEvalBranch​(Body b)
      • type

        public abstract TypeDecl type()
      • isPositive

        public boolean isPositive()
      • representableIn

        public boolean representableIn​(TypeDecl t)
      • isConstant

        public boolean isConstant()
      • isTrue

        public boolean isTrue()
      • isFalse

        public boolean isFalse()
      • isDAafterFalse

        public boolean isDAafterFalse​(Variable v)
      • isDAafterTrue

        public boolean isDAafterTrue​(Variable v)
      • isDAafter

        public boolean isDAafter​(Variable v)
      • isDUafterFalse

        public boolean isDUafterFalse​(Variable v)
      • isDUafterTrue

        public boolean isDUafterTrue​(Variable v)
      • isDUafter

        public boolean isDUafter​(Variable v)
      • mostSpecificConstructor

        public SimpleSet mostSpecificConstructor​(Collection constructors)
      • applicableAndAccessible

        public boolean applicableAndAccessible​(ConstructorDecl decl)
      • hasQualifiedPackage

        public boolean hasQualifiedPackage​(String packageName)
      • qualifiedLookupType

        public SimpleSet qualifiedLookupType​(String name)
      • qualifiedLookupVariable

        public SimpleSet qualifiedLookupVariable​(String name)
      • packageName

        public String packageName()
      • typeName

        public String typeName()
      • isTypeAccess

        public boolean isTypeAccess()
      • isMethodAccess

        public boolean isMethodAccess()
      • isFieldAccess

        public boolean isFieldAccess()
      • isSuperAccess

        public boolean isSuperAccess()
      • isThisAccess

        public boolean isThisAccess()
      • isPackageAccess

        public boolean isPackageAccess()
      • isArrayAccess

        public boolean isArrayAccess()
      • isClassAccess

        public boolean isClassAccess()
      • isSuperConstructorAccess

        public boolean isSuperConstructorAccess()
      • isLeftChildOfDot

        public boolean isLeftChildOfDot()
      • isRightChildOfDot

        public boolean isRightChildOfDot()
      • hasParentDot

        public boolean hasParentDot()
      • nextAccess

        public Access nextAccess()
      • hasNextAccess

        public boolean hasNextAccess()
      • enclosingStmt

        public Stmt enclosingStmt()
      • isVariable

        public boolean isVariable()
      • isUnknown

        public boolean isUnknown()
      • staticContextQualifier

        public boolean staticContextQualifier()
      • isEnumConstant

        public boolean isEnumConstant()
      • false_label

        public Stmt false_label()
      • true_label

        public Stmt true_label()
      • canBeTrue

        public boolean canBeTrue()
      • canBeFalse

        public boolean canBeFalse()
      • modifiedInScope

        public boolean modifiedInScope​(Variable var)
      • isVariable

        public boolean isVariable​(Variable var)
      • isDest

        public boolean isDest()
      • isSource

        public boolean isSource()
      • isIncOrDec

        public boolean isIncOrDec()
      • isDAbefore

        public boolean isDAbefore​(Variable v)
      • isDUbefore

        public boolean isDUbefore​(Variable v)
      • typeBoolean

        public TypeDecl typeBoolean()
      • typeShort

        public TypeDecl typeShort()
      • typeFloat

        public TypeDecl typeFloat()
      • typeDouble

        public TypeDecl typeDouble()
      • typeString

        public TypeDecl typeString()
      • unknownType

        public TypeDecl unknownType()
      • hasPackage

        public boolean hasPackage​(String packageName)
      • enclosingBodyDecl

        public BodyDecl enclosingBodyDecl()
      • hostPackage

        public String hostPackage()
      • methodHost

        public String methodHost()
      • inStaticContext

        public boolean inStaticContext()
      • assignConvertedType

        public TypeDecl assignConvertedType()
      • inExtendsOrImplements

        public boolean inExtendsOrImplements()
      • condition_false_label

        public Stmt condition_false_label()
      • condition_true_label

        public Stmt condition_true_label()