Package gw.lang.parser
Interface ITypeUsesMap
-
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
TypeUsesMap
public interface ITypeUsesMap extends Serializable
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addToDefaultTypeUses(String strQualifiedType)
Add the specified type to the set of default types.void
addToFeatureLiterals(IFeatureInfo fi)
void
addToFeatureSpaces(String strType)
void
addToSpecialTypeUses(String strType)
void
addToTypeUses(IUsesStatement usesStmt)
Adds a type to the current set of types.void
addToTypeUses(String strType)
Adds a type to the current set of types.void
clearNonDefaultTypeUses()
Clears all types not in the default set of types;boolean
containsType(String qualifiedName)
ITypeUsesMap
copy()
Returns a shallow copy of this map.ITypeUsesMap
copyLocalScope()
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.boolean
isSupportRelativePackageResolution()
ITypeUsesMap
lock()
Locks this ITypeUsesMap so that it cannot be mutated in the futureINamespaceType
resolveRelativeNamespaceInAllNamespaces(String strRelativeName)
IType
resolveType(String strRelativeName)
Resolve the type of a relative name via the type uses.void
setSupportRelativePackageResolution(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)
-
-