orc.ast.sites
Class Site

java.lang.Object
  extended by orc.ast.sites.Site
Direct Known Subclasses:
JavaSite, OrcSite

public abstract class Site
extends java.lang.Object

A portable representation of sites. When creating the execution graph, these are converted to in-memory objects.

Author:
dkitchin

Field Summary
static Site CONS
           
static Site DATATYPE
           
static Site EQUAL
           
static Site ERROR
           
static Site IF
           
static Site ISNONE
           
static Site ISSOME
           
static java.lang.String JAVA
           
static Site LET
           
static Site NIL
           
static Site NONE
           
static Site NOT
           
static java.lang.String ORC
           
static Site SOME
           
static Site TRYCONS
           
static Site TRYNIL
           
 
Constructor Summary
Site()
           
 
Method Summary
static Site build(java.lang.String protocol, java.lang.String location)
           
static Site build(java.lang.String protocol, java.net.URI location)
           
static Site buildCoreSite(java.lang.String primitive)
           
 boolean equals(java.lang.Object obj)
          Equality on sites.
abstract  java.net.URI getLocation()
           
abstract  java.lang.String getProtocol()
           
 int hashCode()
           
abstract  Site instantiate(Config config)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

ORC

public static final java.lang.String ORC
See Also:
Constant Field Values

JAVA

public static final java.lang.String JAVA
See Also:
Constant Field Values

LET

public static Site LET

ERROR

public static Site ERROR

IF

public static Site IF

NOT

public static Site NOT

SOME

public static Site SOME

NONE

public static Site NONE

ISSOME

public static Site ISSOME

ISNONE

public static Site ISNONE

CONS

public static Site CONS

NIL

public static Site NIL

TRYCONS

public static Site TRYCONS

TRYNIL

public static Site TRYNIL

EQUAL

public static Site EQUAL

DATATYPE

public static Site DATATYPE
Constructor Detail

Site

public Site()
Method Detail

build

public static Site build(java.lang.String protocol,
                         java.lang.String location)

build

public static Site build(java.lang.String protocol,
                         java.net.URI location)

buildCoreSite

public static Site buildCoreSite(java.lang.String primitive)

getLocation

public abstract java.net.URI getLocation()

getProtocol

public abstract java.lang.String getProtocol()

instantiate

public abstract Site instantiate(Config config)
                          throws SiteResolutionException
Throws:
SiteResolutionException

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
Equality on sites. Two sites are equal if their protocols are equal and their locations are equal.

Overrides:
equals in class java.lang.Object
Parameters:
obj - The site to which to compare.
See Also:
Object.equals(java.lang.Object)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object