orc.runtime.sites.core
Class Let

java.lang.Object
  extended by orc.runtime.values.Value
      extended by orc.runtime.sites.Site
          extended by orc.runtime.sites.core.Let
All Implemented Interfaces:
Callable

public class Let
extends Site

Implements the built-in "let" site

Author:
wcook

Field Summary
 
Fields inherited from class orc.runtime.values.Value
futureNotReady
 
Constructor Summary
Let()
           
 
Method Summary
 void callSite(Args args, Token caller)
          Outputs a single value or creates a tuple.
static java.lang.Object condense(java.lang.Object[] values)
          Classic 'let' functionality.
 Type type()
           
 
Methods inherited from class orc.runtime.sites.Site
accept, createCall, enterTransaction
 
Methods inherited from class orc.runtime.values.Value
forceArg, forceCall, signal
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Let

public Let()
Method Detail

callSite

public void callSite(Args args,
                     Token caller)
Outputs a single value or creates a tuple.

Specified by:
callSite in class Site
Parameters:
args - list of argument values
caller - where the result should be sent

type

public Type type()
          throws TypeException
Overrides:
type in class Site
Throws:
TypeException

condense

public static java.lang.Object condense(java.lang.Object[] values)
Classic 'let' functionality. Reduce a list of argument values into a single value as follows: Zero arguments: return a signal One argument: return that value Two or more arguments: return a tuple of values