Class StatefulNameEnvironment

java.lang.Object
org.aspectj.ajdt.internal.core.builder.StatefulNameEnvironment
All Implemented Interfaces:
IModuleAwareNameEnvironment, INameEnvironment

public class StatefulNameEnvironment extends Object implements IModuleAwareNameEnvironment
  • Constructor Details

  • Method Details

    • cleanup

      public void cleanup()
      Description copied from interface: INameEnvironment
      This method cleans the environment. It is responsible for releasing the memory and freeing resources. Passed that point, the name environment is no longer usable. A name environment can have a long life cycle, therefore it is the responsibility of the code which created it to decide when it is a good time to clean it up.
      Specified by:
      cleanup in interface INameEnvironment
    • findType

      public NameEnvironmentAnswer findType(char[] typeName, char[][] packageName)
      Description copied from interface: INameEnvironment
      Find a type named in the package . Answer the binary form of the type if it is known to be consistent. Otherwise, answer the compilation unit which defines the type or null if the type does not exist. The default package is indicated by char[0][]. It is known that the package containing the type exists. NOTE: This method can be used to find a member type using its internal name A$B, but the source file for A is answered if the binary file is inconsistent.
      Specified by:
      findType in interface IModuleAwareNameEnvironment
      Specified by:
      findType in interface INameEnvironment
    • findType

      public NameEnvironmentAnswer findType(char[][] compoundName)
      Description copied from interface: INameEnvironment
      Find a type with the given compound name. Answer the binary form of the type if it is known to be consistent. Otherwise, answer the compilation unit which defines the type or null if the type does not exist. Types in the default package are specified as {{typeName}}. It is unknown whether the package containing the type actually exists. NOTE: This method can be used to find a member type using its internal name A$B, but the source file for A is answered if the binary file is inconsistent.
      Specified by:
      findType in interface IModuleAwareNameEnvironment
      Specified by:
      findType in interface INameEnvironment
    • isPackage

      public boolean isPackage(char[][] parentPackageName, char[] packageName)
      Description copied from interface: INameEnvironment
      Answer whether packageName is the name of a known subpackage inside the package parentPackageName. A top level package is found relative to null. The default package is always assumed to exist. For example: isPackage({{java}, {awt}}, {event}); isPackage(null, {java});
      Specified by:
      isPackage in interface IModuleAwareNameEnvironment
      Specified by:
      isPackage in interface INameEnvironment
    • update

      public void update(Map<String,​File> classNameToFileMap, Set<String> added)
      Needs to be told about changes. The 'added' set is a subset of classNameToFileMap consisting of just those names added during this build - to reduce any impact on incremental compilation times.
    • findType

      public NameEnvironmentAnswer findType(char[][] compoundName, char[] moduleName)
      Specified by:
      findType in interface IModuleAwareNameEnvironment
    • findType

      public NameEnvironmentAnswer findType(char[] typeName, char[][] packageName, char[] moduleName)
      Description copied from interface: IModuleAwareNameEnvironment
      Answer a type identified by the given names. moduleName may be one of the special names from ModuleBinding (ANY, ANY_NAMED, UNNAMED).
      Specified by:
      findType in interface IModuleAwareNameEnvironment
    • hasCompilationUnit

      public boolean hasCompilationUnit(char[][] qualifiedPackageName, char[] moduleName, boolean checkCUs)
      Description copied from interface: IModuleAwareNameEnvironment
      Answer whether the given package (within the given module) contains any compilation unit.
      Specified by:
      hasCompilationUnit in interface IModuleAwareNameEnvironment
      checkCUs - - if true, check contained Compilation Units for a matching package declaration
      Returns:
      true iff the package contains at least one compilation unit.
    • getModule

      public IModule getModule(char[] moduleName)
      Description copied from interface: IModuleAwareNameEnvironment
      Get the module with the given name, which must denote a named module.
      Specified by:
      getModule in interface IModuleAwareNameEnvironment
    • getAllAutomaticModules

      public char[][] getAllAutomaticModules()
      Specified by:
      getAllAutomaticModules in interface IModuleAwareNameEnvironment
    • getModulesDeclaringPackage

      public char[][] getModulesDeclaringPackage(char[][] arg0, char[] arg1)
      Specified by:
      getModulesDeclaringPackage in interface IModuleAwareNameEnvironment
    • listPackages

      public char[][] listPackages(char[] arg0)
      Description copied from interface: IModuleAwareNameEnvironment
      Lists all packages in the module identified by the given, real module name (i.e., this method is implemented only for IModuleAwareNameEnvironment.LookupStrategy.Named).
      Specified by:
      listPackages in interface IModuleAwareNameEnvironment
      Returns:
      array of flat, dot-separated package names