com.sun.msv.grammar
Class ExpressionPool.ClosedHash

java.lang.Object
  |
  +--com.sun.msv.grammar.ExpressionPool.ClosedHash
All Implemented Interfaces:
Serializable
Enclosing class:
ExpressionPool

public static final class ExpressionPool.ClosedHash
extends Object
implements Serializable

expression cache by closed hash. Special care has to be taken wrt threading. This implementation allows get and put method to be called simulatenously.

See Also:
Serialized Form

Constructor Summary
ExpressionPool.ClosedHash()
           
ExpressionPool.ClosedHash(ExpressionPool.ClosedHash parent)
           
 
Method Summary
 Expression get(Expression key)
           
 Expression get(int hash, Expression child, Class type)
           
 Expression get(int hash, Expression left, Expression right, Class type)
           
 void put(Expression newExp)
          put method.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExpressionPool.ClosedHash

public ExpressionPool.ClosedHash()

ExpressionPool.ClosedHash

public ExpressionPool.ClosedHash(ExpressionPool.ClosedHash parent)
Method Detail

get

public Expression get(int hash,
                      Expression left,
                      Expression right,
                      Class type)

get

public Expression get(int hash,
                      Expression child,
                      Class type)

get

public Expression get(Expression key)

put

public void put(Expression newExp)
put method. No two threads can call this method simulatenously, and it's the caller's responsibility to enforce it.