Class BasicProjectMemoizer<T extends QualifiableNode,​O extends QualifiableNode>

  • Type Parameters:
    T - Type of type declaration nodes of the language
    O - Type of operation declaration nodes of the language
    All Implemented Interfaces:
    ProjectMemoizer<T,​O>

    public abstract class BasicProjectMemoizer<T extends QualifiableNode,​O extends QualifiableNode>
    extends java.lang.Object
    implements ProjectMemoizer<T,​O>
    Simple implementation of a project memoizer. Memoizers are accessible in constant time, provided the QualifiedName's hashCode is well distributed.

    This implementation takes care of recollecting irrelevant memoizers by storing them in WeakHashMap.

    Since:
    6.0.0
    Author:
    Clément Fournier