Package gw.lang.parser
Interface ITypeUsesMap
-
- All Superinterfaces:
Serializable
public interface ITypeUsesMap extends Serializable
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddToDefaultTypeUses(String strQualifiedType)Add the specified type to the set of default types.voidaddToFeatureLiterals(IFeatureInfo fi)voidaddToFeatureSpaces(String strType)voidaddToSpecialTypeUses(String strType)voidaddToTypeUses(IUsesStatement usesStmt)Adds a type to the current set of types.voidaddToTypeUses(String strType)Adds a type to the current set of types.voidclearNonDefaultTypeUses()Clears all types not in the default set of types;booleancontainsType(String qualifiedName)ITypeUsesMapcopy()Returns a shallow copy of this map.ITypeUsesMapcopyLocalScope()Copies the type uses map but alias the global map from this.Set<IFeatureInfo>getFeatureLiterals()Set<String>getFeatureSpaces()Set<String>getNamespaces()Returns the set of strings representing the namespaces that are currently used by this parser.Set<String>getTypeUses()Returns the set of strings representing the types that are currently used by this parser.Set<IUsesStatement>getUsesStatements()Return the set of uses-statements that participate in this map.booleanisSupportRelativePackageResolution()ITypeUsesMaplock()Locks this ITypeUsesMap so that it cannot be mutated in the futureINamespaceTyperesolveRelativeNamespaceInAllNamespaces(String strRelativeName)ITyperesolveType(String strRelativeName)Resolve the type of a relative name via the type uses.voidsetSupportRelativePackageResolution(boolean bSupportRelativePackageResolution)
-
-
-
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.
-
getFeatureLiterals
Set<IFeatureInfo> getFeatureLiterals()
-
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)
-
-