@HashCodeAndEqualsPlugin.Enhance public abstract static class TypePool.AbstractBase extends Object implements TypePool
TypePool
that is managing a cache provider and
that handles the description of array and primitive types.Modifier and Type | Class and Description |
---|---|
protected static class |
TypePool.AbstractBase.ArrayTypeResolution
A resolution for a type that, if resolved, represents an array type.
|
protected static interface |
TypePool.AbstractBase.ComponentTypeReference
A lazy representation of the component type of an array.
|
static class |
TypePool.AbstractBase.Hierarchical
Implements a hierarchical view of type pools, similarly to class loader hierarchies.
|
TypePool.AbstractBase, TypePool.CacheProvider, TypePool.ClassLoading, TypePool.Default, TypePool.Empty, TypePool.Explicit, TypePool.LazyFacade, TypePool.Resolution
Modifier and Type | Field and Description |
---|---|
protected TypePool.CacheProvider |
cacheProvider
The cache provider of this instance.
|
protected static Map<String,String> |
PRIMITIVE_DESCRIPTORS
A map of primitive types by their descriptor.
|
protected static Map<String,TypeDescription> |
PRIMITIVE_TYPES
A map of primitive types by their name.
|
Modifier | Constructor and Description |
---|---|
protected |
AbstractBase(TypePool.CacheProvider cacheProvider)
Creates a new instance.
|
Modifier and Type | Method and Description |
---|---|
void |
clear()
Clears this type pool's cache.
|
TypePool.Resolution |
describe(String name)
Locates and describes the given type by its name.
|
protected TypePool.Resolution |
doCache(String name,
TypePool.Resolution resolution)
Writes the resolution to the cache.
|
protected abstract TypePool.Resolution |
doDescribe(String name)
Determines a resolution to a non-primitive, non-array type.
|
protected static final Map<String,TypeDescription> PRIMITIVE_TYPES
protected static final Map<String,String> PRIMITIVE_DESCRIPTORS
protected final TypePool.CacheProvider cacheProvider
protected AbstractBase(TypePool.CacheProvider cacheProvider)
cacheProvider
- The cache provider to be used.public TypePool.Resolution describe(String name)
describe
in interface TypePool
name
- The name of the type to describe. The name is to be written as when calling Class.getName()
.TypePool.Resolution
represents this type. Otherwise, an illegal resolution is returned.protected TypePool.Resolution doCache(String name, TypePool.Resolution resolution)
name
- The name of the type.resolution
- The resolution for this type.protected abstract TypePool.Resolution doDescribe(String name)
name
- The name of the type to describe.Copyright © 2014–2024. All rights reserved.