org.jactr.core.module.procedural.map.template
Class AbstractInstantiationMapTemplate<T,K,M extends IInstantiationMapTemplate<K>>

java.lang.Object
  extended by org.jactr.core.module.procedural.map.template.AbstractInstantiationMapTemplate<T,K,M>
All Implemented Interfaces:
IInstantiationMapTemplate<T>
Direct Known Subclasses:
BufferInstantiationMapTemplate, ModelInstantiationMapTemplate

public abstract class AbstractInstantiationMapTemplate<T,K,M extends IInstantiationMapTemplate<K>>
extends java.lang.Object
implements IInstantiationMapTemplate<T>


Method Summary
 boolean add(IProduction production)
           
 java.util.Set<IProduction> get(java.util.Set<IProduction> container)
           
 T getRoot()
           
 int getSize()
           
abstract  IInstaniationMap<T> instantiate(java.lang.Object... params)
           
 void remove(IProduction production)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getRoot

public T getRoot()
Specified by:
getRoot in interface IInstantiationMapTemplate<T>

getSize

public int getSize()
Specified by:
getSize in interface IInstantiationMapTemplate<T>

add

public boolean add(IProduction production)
Specified by:
add in interface IInstantiationMapTemplate<T>
Returns:
true if this map is accepting the production

remove

public void remove(IProduction production)
Specified by:
remove in interface IInstantiationMapTemplate<T>

get

public java.util.Set<IProduction> get(java.util.Set<IProduction> container)
Specified by:
get in interface IInstantiationMapTemplate<T>

instantiate

public abstract IInstaniationMap<T> instantiate(java.lang.Object... params)
Specified by:
instantiate in interface IInstantiationMapTemplate<T>