Class AllTypesCache


  • public class AllTypesCache
    extends Object
    Manages a search cache for types in the workspace. Instead of returning objects of type ICElement the methods of this class returns a list of the lightweight objects ITypeInfo.

    AllTypesCache runs asynchronously using a background job to rebuild the cache as needed. If the cache becomes dirty again while the background job is running, the job is restarted.

    If getTypes is called in response to a user action, a progress dialog is shown. If called before the background job has finished, getTypes waits for the completion of the background job.

    Restriction:
    This class is not intended to be subclassed by clients.
    Restriction:
    This class is not intended to be instantiated by clients.
    • Constructor Detail

      • AllTypesCache

        public AllTypesCache()
    • Method Detail

      • getAllTypes

        public static ITypeInfo[] getAllTypes()
        Returns all types in the workspace.
      • getAllTypes

        public static ITypeInfo[] getAllTypes​(org.eclipse.core.runtime.IProgressMonitor monitor)
        Returns all types in the workspace.
      • getTypes

        public static ITypeInfo[] getTypes​(ITypeSearchScope scope,
                                           int[] kinds)
        Returns all types in the given scope.
        Parameters:
        scope - The search scope
        kinds - Array containing CElement types: C_NAMESPACE, C_CLASS, C_UNION, C_ENUMERATION, C_TYPEDEF
      • getNamespaces

        public static ITypeInfo[] getNamespaces​(ITypeSearchScope scope,
                                                boolean includeGlobalNamespace)
        Returns all namespaces in the given scope.
        Parameters:
        scope - The search scope
        includeGlobalNamespace - true if the global (default) namespace should be returned
      • getTypes

        @Deprecated
        public static ITypeInfo[] getTypes​(ICProject project,
                                           IQualifiedTypeName qualifiedName,
                                           boolean matchEnclosed,
                                           boolean ignoreCase)
        Deprecated.
        never worked.
        Restriction:
        This method is not intended to be referenced by clients.