Interface ITypeUsesMap

    • Method Detail

      • getTypeUses

        Set<String> getTypeUses()
        Returns the set of strings representing the types that are currently used by this parser. The set of types includes both those declared in #uses statements and those set via setDefaultTypeUses.
      • getNamespaces

        Set<String> getNamespaces()
        Returns the set of strings representing the namespaces that are currently used by this parser.
      • getFeatureSpaces

        Set<String> getFeatureSpaces()
      • addToTypeUses

        void addToTypeUses​(String strType)
        Adds a type to the current set of types. Can be a complete type or a wildcard namespace e.g., java.util.HashMap and java.util.* are both legal.
      • addToFeatureSpaces

        void addToFeatureSpaces​(String strType)
      • addToFeatureLiterals

        void addToFeatureLiterals​(IFeatureInfo fi)
      • addToTypeUses

        void addToTypeUses​(IUsesStatement usesStmt)
        Adds a type to the current set of types. Can be a complete type or a wildcard namespace e.g., java.util.HashMap and java.util.* are both legal.
      • getUsesStatements

        Set<IUsesStatement> getUsesStatements()
        Return the set of uses-statements that participate in this map. Note these are the uses-statements compiled from source.
      • addToDefaultTypeUses

        void addToDefaultTypeUses​(String strQualifiedType)
        Add the specified type to the set of default types. NOTE: The type is always treated as a package. If it ends in .* then it will be stripped
      • resolveType

        IType resolveType​(String strRelativeName)
        Resolve the type of a relative name via the type uses. if the relative type matches uses-type, resolves the type as such. If the type matches, but does not resove, throws an exception, otherwise returns null if there is no match.
      • resolveRelativeNamespaceInAllNamespaces

        INamespaceType resolveRelativeNamespaceInAllNamespaces​(String strRelativeName)
        Parameters:
        strRelativeName - A relative path name. E.g., "lang" is a relative package name of "java.lang"
        Returns:
        The absolute namespace type for the relative name or null if not found.
      • clearNonDefaultTypeUses

        void clearNonDefaultTypeUses()
        Clears all types not in the default set of types;
      • copy

        ITypeUsesMap copy()
        Returns a shallow copy of this map.
      • copyLocalScope

        ITypeUsesMap copyLocalScope()
        Copies the type uses map but alias the global map from this.
        Returns:
        a copy of this type uses map.
      • lock

        ITypeUsesMap lock()
        Locks this ITypeUsesMap so that it cannot be mutated in the future
        Returns:
        this ITypeUsesMap, so that this method can be used in a builder-like manner.
      • containsType

        boolean containsType​(String qualifiedName)
        Returns:
        if a type wit the given name can be resolved via this type uses map.
      • addToSpecialTypeUses

        void addToSpecialTypeUses​(String strType)
      • isSupportRelativePackageResolution

        boolean isSupportRelativePackageResolution()
      • setSupportRelativePackageResolution

        void setSupportRelativePackageResolution​(boolean bSupportRelativePackageResolution)