checkers.regex
Class RegexAnnotatedTypeFactory

java.lang.Object
  extended by checkers.types.AnnotatedTypeFactory
      extended by checkers.types.BasicAnnotatedTypeFactory<RegexChecker>
          extended by checkers.regex.RegexAnnotatedTypeFactory

public class RegexAnnotatedTypeFactory
extends BasicAnnotatedTypeFactory<RegexChecker>

Adds ValidRegex to the type of tree, in two cases:

  1. a String literal that is a valid regular expression
  2. a String concatenation tree of two valid regular expression values.
Adds ValidRegex to the type of each String literal that is a syntactically valid regular expression.


Nested Class Summary
Modifier and Type Class and Description
 
Nested classes/interfaces inherited from class checkers.types.AnnotatedTypeFactory
AnnotatedTypeFactory.InheritedFromClassAnnotator
 
Field Summary
Modifier and Type Field and Description
 
Fields inherited from class checkers.types.BasicAnnotatedTypeFactory
defaults, flow, FLOW_BY_DEFAULT, poly, treeAnnotator, typeAnnotator, useFlow
 
Fields inherited from class checkers.types.AnnotatedTypeFactory
annotations, atypes, elements, env, qualHierarchy, root, trees, types, visitorState
 
Constructor Summary
Constructor and Description
RegexAnnotatedTypeFactory(RegexChecker checker, CompilationUnitTree root)
           
 
Method Summary
Modifier and Type Method and Description
 TreeAnnotator createTreeAnnotator(RegexChecker checker)
          Returns a TreeAnnotator that adds annotations to a type based on the contents of a tree.
 
Methods inherited from class checkers.types.BasicAnnotatedTypeFactory
annotateImplicit, annotateImplicit, createFlow, createFlowQualifiers, createTypeAnnotator, methodFromUse, postDirectSuperTypes
 
Methods inherited from class checkers.types.AnnotatedTypeFactory
aliasedAnnotation, annotateInheritedFromClass, constructorFromUse, createLRUCache, declarationFromElement, fromClass, fromElement, fromElement, fromElement, fromExpression, fromMember, fromNewClass, fromTypeTree, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedTypeFromTypeTree, getBoxedType, getCurrentClassType, getCurrentMethodReceiver, getEnclosingType, getImplicitReceiverType, getPath, getQualifierHierarchy, getReceiver, getSelfType, getUnboxedType, getVisitorState, isMostEnclosingThisDeref, isWithinConstructor, postAsMemberOf, unify
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RegexAnnotatedTypeFactory

public RegexAnnotatedTypeFactory(RegexChecker checker,
                                 CompilationUnitTree root)
Method Detail

createTreeAnnotator

public TreeAnnotator createTreeAnnotator(RegexChecker checker)
Description copied from class: BasicAnnotatedTypeFactory
Returns a TreeAnnotator that adds annotations to a type based on the contents of a tree. Subclasses may override this method to specify more appriopriate TreeAnnotator

Overrides:
createTreeAnnotator in class BasicAnnotatedTypeFactory<RegexChecker>
Returns:
a tree annotator