orc.runtime.sites
Class Site
java.lang.Object
   orc.runtime.values.Value
orc.runtime.values.Value
       orc.runtime.sites.Site
orc.runtime.sites.Site
- All Implemented Interfaces: 
- Callable
- Direct Known Subclasses: 
- Apply, ClassProxy, DotSite, Error, EvalSite, IsNone, IsSome, KilimSite, Let, Ltimer, MethodProxy, None, ObjectProxy, PartialSite, PopLtimer, Print, Println, PushLtimer, Rtimer, Some, ThreadedObjectProxy, ThreadedPartialSite, ThreadedSite, TryCons, TryNil
- public abstract class Site 
- extends Value- implements Callable
Base class for all sites
- Author:
- wcook, dkitchin
 
 
| Constructor Summary | 
| Site()
 | 
 
 
 
| Methods inherited from class java.lang.Object | 
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
Site
public Site()
createCall
public void createCall(Token callToken,
                       java.util.List<java.lang.Object> args,
                       Node nextNode)
                throws TokenException
- Invoked by a Call to invoke a site. The argument list is 
 scanned to make sure that all parameters are bound.
 If an unbound parameter is found, the call is placed on a 
 queue and nothing more is done.
 Once all parameters are bound, their values are collected
 and the corresponding subclass (the actual site) is called.
 
- 
- Specified by:
- createCallin interface- Callable
 
- 
- Parameters:
- callToken- token for which the call is being made: points to the call node
- args- argument list
- nextNode- next node after the call node, to which the result should be sent
- Throws:
- TokenException
- See Also:
- Callable.createCall(orc.runtime.Token, java.util.List, orc.runtime.nodes.Node)
 
enterTransaction
protected void enterTransaction(Transaction transaction)
                         throws NontransactionalSiteException
- 
 
- 
- Throws:
- NontransactionalSiteException
 
callSite
public abstract void callSite(Args args,
                              Token caller)
                       throws TokenException
- Must be implemented by subclasses to implement the site behavior
 
- 
 
- 
- Parameters:
- args- list of argument values
- caller- where the result should be sent
- Throws:
- TokenException
 
accept
public <E> E accept(Visitor<E> visitor)
- 
- Overrides:
- acceptin class- Value
 
- 
 
type
public Type type()
          throws TypeException
- 
 
- 
- Throws:
- TypeException