A B C D E F G H I J K L M N O P R S T U V W

I

IAbstractLatticeOperations<LE,N> - Interface in edu.cmu.cs.crystal.flow
Analysis writers do not implement this interface directly; instead, they implement an extending interface that instantiates the node type parameter, N of this interface.
IAnalysisInput - Interface in edu.cmu.cs.crystal
This interface holds input and data structures that the analysis may need during its run.
IAnalysisReporter - Interface in edu.cmu.cs.crystal
An interface that analyses use for reporting problems.
IAnalysisReporter.SEVERITY - Enum in edu.cmu.cs.crystal
The severity of a user problem being reported.
IBranchSensitiveTransferFunction<LE> - Interface in edu.cmu.cs.crystal.flow
Interface for defining branch-sensitive flow analyses.
ICFGEdge<N> - Interface in edu.cmu.cs.crystal.cfg
Abstract TODO: define subclasses for exceptions, normal, true, false, switch edges
ICFGNode<N> - Interface in edu.cmu.cs.crystal.cfg
Abstract
IControlFlowGraph<N> - Interface in edu.cmu.cs.crystal.cfg
 
ICrystalAnalysis - Interface in edu.cmu.cs.crystal
The primary interface to create a Crystal analysis.
ICrystalAnnotation - Interface in edu.cmu.cs.crystal.annotations
Interface for accessing annotations through the Crystal annotation database.
ICrystalJob - Interface in edu.cmu.cs.crystal.internal
A Crystal job is an abstraction of an analysis or analyses that we want to run on a file or many files.
IEclipseFieldAccess - Interface in edu.cmu.cs.crystal.tac.eclipse
Interface used internally to represent field accesses, x.f.
IEclipseVariableQuery - Interface in edu.cmu.cs.crystal.tac.eclipse
Interface to query variables from the TAC infrastructure.
IFlowAnalysis<LE> - Interface in edu.cmu.cs.crystal.flow
All flow analyses must be able to return the information defined by this interface.
IFlowAnalysisDefinition<LE> - Interface in edu.cmu.cs.crystal.flow
This interface contains operations common to any transfer function accepted by Crystal's flow analysis framework: A direction: IFlowAnalysisDefinition.getAnalysisDirection() Lattice operations: #createLatticeOperations(MethodDeclaration) Entry lattice value: IFlowAnalysisDefinition.createEntryValue(MethodDeclaration) These will be called once whenever another method needs to be analyzed.
ILabel - Interface in edu.cmu.cs.crystal.flow
A label is a named edge on a control flow graph.
ILatticeOperations<LE> - Interface in edu.cmu.cs.crystal.flow
Implement this interface to provide typical lattice operations.
implicitThisVariable(IBinding) - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseTAC
 
implicitThisVariable(IBinding) - Method in interface edu.cmu.cs.crystal.tac.eclipse.IEclipseVariableQuery
Determines the implicit this variable for a method call or field access.
IncludeClassFilesHandler - Class in edu.cmu.cs.crystal.internal
 
IncludeClassFilesHandler() - Constructor for class edu.cmu.cs.crystal.internal.IncludeClassFilesHandler
 
indexOf(Object) - Method in class edu.cmu.cs.crystal.util.ConsList
 
init(IWorkbenchWindow) - Method in class edu.cmu.cs.crystal.internal.CrystalUIAction
required by the IWorkbenchWindowActionDelegate interface
init(IWorkbenchWindow) - Method in class edu.cmu.cs.crystal.internal.DisplayCrystalInfo
We will cache window object in order to be able to provide parent shell for the message dialog.
initializeDefaultPreferences() - Method in class edu.cmu.cs.crystal.internal.CrystalPreferences
 
Instance - Static variable in class edu.cmu.cs.crystal.analysis.live.LiveVariableAnalysis
 
instance() - Static method in class edu.cmu.cs.crystal.internal.NullPrintWriter
 
InstanceofInstruction - Interface in edu.cmu.cs.crystal.tac.model
x = y instanceof T.
instruction(ASTNode) - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseTAC
Instruction for a given AST Node.
InvocationInstruction - Interface in edu.cmu.cs.crystal.tac.model
Abstract x = call(z1, ..., zn).
IResult<LE> - Interface in edu.cmu.cs.crystal.flow
Interface for mapping branch labels to analysis information.
IRunCrystalCommand - Interface in edu.cmu.cs.crystal
A command to run certain crystal analyses on certain files.
isAnonClassType() - Method in interface edu.cmu.cs.crystal.tac.model.NewObjectInstruction
Indicates whether this instruction instantiates an anonymous class.
isCapturedFromOuterScope() - Method in class edu.cmu.cs.crystal.tac.model.SourceVariable
Indicates whether this source variable is captured from an outer scope.
isCaughtVariable() - Method in interface edu.cmu.cs.crystal.tac.model.SourceVariableDeclaration
Is this variable being declared as the parameter to a catch block?
isCompleteDown() - Method in class edu.cmu.cs.crystal.util.typehierarchy.TypeNode
 
isDefaultBinding(IBinding) - Static method in class edu.cmu.cs.crystal.tac.eclipse.EclipseTAC
 
isDirectSupertype(TypeNode) - Method in class edu.cmu.cs.crystal.util.typehierarchy.TypeNode
 
isEmpty() - Method in class edu.cmu.cs.crystal.util.ConsList
 
isEmptyLabel() - Method in class edu.cmu.cs.crystal.flow.IteratorLabel
 
isEnabled() - Method in class edu.cmu.cs.crystal.internal.ClearWarningHandler
 
isEnabled() - Method in class edu.cmu.cs.crystal.internal.EnableAnalysisHandler
 
isEnabled() - Method in class edu.cmu.cs.crystal.internal.RunCrystalHandler
 
isEnabled() - Method in class edu.cmu.cs.crystal.internal.RunCrystalOnCurrentFileHandler
 
isEnhancedForLoopVariable() - Method in interface edu.cmu.cs.crystal.tac.model.SourceVariableDeclaration
Is this variable being declared as part of an enhanced for loop?
isExplicitSuperAccess() - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseBrokenFieldAccess
 
isExplicitSuperAccess() - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseFieldDeclaration
 
isExplicitSuperAccess() - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseImplicitFieldAccess
 
isExplicitSuperAccess() - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseReferenceFieldAccess
 
isExplicitSuperAccess() - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseSuperFieldAccess
 
isExplicitSuperAccess() - Method in interface edu.cmu.cs.crystal.tac.eclipse.IEclipseFieldAccess
Indicates whether this is an explicit super-field access, super.f.
isFormalParameter() - Method in interface edu.cmu.cs.crystal.tac.model.SourceVariableDeclaration
Is this variable being declared as a formal parameter to a method?
isHandled() - Method in class edu.cmu.cs.crystal.internal.ClearWarningHandler
 
isHandled() - Method in class edu.cmu.cs.crystal.internal.EnableAnalysisHandler
 
isHandled() - Method in class edu.cmu.cs.crystal.internal.RunCrystalHandler
 
isHandled() - Method in class edu.cmu.cs.crystal.internal.RunCrystalOnCurrentFileHandler
 
isImplicit() - Method in class edu.cmu.cs.crystal.tac.model.ThisVariable
 
isImplicitThisAccess() - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseBrokenFieldAccess
 
isImplicitThisAccess() - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseFieldDeclaration
 
isImplicitThisAccess() - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseImplicitFieldAccess
 
isImplicitThisAccess() - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseReferenceFieldAccess
 
isImplicitThisAccess() - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseSuperFieldAccess
 
isImplicitThisAccess() - Method in interface edu.cmu.cs.crystal.tac.eclipse.IEclipseFieldAccess
Indicates whether this is an implicit access to a receiver field (which could actually be a field of an outer class).
ISingleCrystalJob - Interface in edu.cmu.cs.crystal.internal
An interface for a single analysis job.
isInitialized() - Method in interface edu.cmu.cs.crystal.tac.model.NewArrayInstruction
Indicates whether this array has an initializer associated with it.
isInLoop(ASTNode) - Method in class edu.cmu.cs.crystal.analysis.metrics.LoopCounter
 
isLiveBefore(Variable, ASTNode) - Method in class edu.cmu.cs.crystal.analysis.live.LiveVariableAnalysis
 
isMulti(IAnnotationBinding) - Method in class edu.cmu.cs.crystal.annotations.AnnotationDatabase
Checks whether this annotation is marked as a multi annotation, as described by MultiAnnotation
isMulti(IAnnotation, IType) - Method in class edu.cmu.cs.crystal.annotations.AnnotationDatabase
See AnnotationDatabase.isMulti(IAnnotationBinding).
isNone() - Method in class edu.cmu.cs.crystal.util.Option
 
isNonNullString() - Method in interface edu.cmu.cs.crystal.tac.model.LoadLiteralInstruction
Indicates whether this loads a string literal.
isNull() - Method in interface edu.cmu.cs.crystal.tac.model.LoadLiteralInstruction
Indicates whether this loads the null literal.
isNumber() - Method in interface edu.cmu.cs.crystal.tac.model.LoadLiteralInstruction
Indicates the load of a number such as an int.
isPrimitive() - Method in interface edu.cmu.cs.crystal.tac.model.LoadLiteralInstruction
Indicates the load of a primitive value.
isPrimitive() - Method in class edu.cmu.cs.crystal.util.typehierarchy.TypeNode
 
isQualified() - Method in class edu.cmu.cs.crystal.tac.model.KeywordVariable
Is this a standard keyword variable, or is it qualified?
isQualified() - Method in class edu.cmu.cs.crystal.tac.model.ThisVariable
 
isSome() - Method in class edu.cmu.cs.crystal.util.Option
 
isStaticBinding(IBinding) - Static method in class edu.cmu.cs.crystal.tac.eclipse.EclipseTAC
 
isStaticFieldAccess() - Method in class edu.cmu.cs.crystal.tac.eclipse.EclipseAbstractFieldAccess
 
isStaticFieldAccess() - Method in interface edu.cmu.cs.crystal.tac.model.TACFieldAccess
Indicates whether this is an access to a static field (including enum constants, I think).
isStaticMethodCall() - Method in interface edu.cmu.cs.crystal.tac.model.MethodCallInstruction
Indicates whether this is a call to a static method.
isSubtypeCompatible(String, String) - Method in class edu.cmu.cs.crystal.util.typehierarchy.CachedTypeHierarchy
 
isSubtypeCompatible(String, String) - Method in interface edu.cmu.cs.crystal.util.TypeHierarchy
 
isSummary() - Method in class edu.cmu.cs.crystal.analysis.alias.DefaultObjectLabel
 
isSummary() - Method in interface edu.cmu.cs.crystal.analysis.alias.ObjectLabel
 
isSuperCall() - Method in interface edu.cmu.cs.crystal.tac.model.ConstructorCallInstruction
Indicates whether this is a super-constructor call or a call to a constructor in the same class as the surrounding constructor.
isSuperCall() - Method in interface edu.cmu.cs.crystal.tac.model.MethodCallInstruction
Indicates whether this is a super-call
isSupertype(TypeNode) - Method in class edu.cmu.cs.crystal.util.typehierarchy.TypeNode
 
isUnqualifiedSuper() - Method in class edu.cmu.cs.crystal.tac.model.SuperVariable
 
isUnqualifiedSuper() - Method in class edu.cmu.cs.crystal.tac.model.Variable
 
isUnqualifiedThis() - Method in class edu.cmu.cs.crystal.tac.model.ThisVariable
 
isUnqualifiedThis() - Method in class edu.cmu.cs.crystal.tac.model.Variable
 
isVoidType(ITypeBinding) - Static method in class edu.cmu.cs.crystal.util.Utilities
Is the given type the "void" type?
ITACAnalysisContext - Interface in edu.cmu.cs.crystal.tac
This interface defines methods to map AST data structures to TAC variables.
ITACBranchSensitiveTransferFunction<LE> - Interface in edu.cmu.cs.crystal.tac
Interface for defining branch-sensitive flow analysis transfer functions based on 3-address code instructions.
ITACFlowAnalysis<LE> - Interface in edu.cmu.cs.crystal.tac
This interface defines methods to map AST data structures to TAC variables.
ITACTransferFunction<LE> - Interface in edu.cmu.cs.crystal.tac
Interface for defining flow analysis transfer functions based on 3-address code instructions.
iterator() - Method in class edu.cmu.cs.crystal.util.ConsList
 
IteratorLabel - Class in edu.cmu.cs.crystal.flow
A label for control flow where the branching flow is due to an iterator, for example, in an enhanced for loop.
ITransferFunction<LE> - Interface in edu.cmu.cs.crystal.flow
Interface for defining standard flow analyses.
IVariableVisitor<T> - Interface in edu.cmu.cs.crystal.tac.model
 

A B C D E F G H I J K L M N O P R S T U V W