Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

bossa.syntax
Class Constraint  view Constraint download Constraint.java

java.lang.Object
  extended bybossa.syntax.Node
      extended bybossa.syntax.Constraint
Direct Known Subclasses:
MethodContainer.Constraint

public class Constraint
extends Node

A list of binders + atomic constraints.

Version:
$Date: 2003/11/15 17:25:47 $

Field Summary
private  java.util.List atomics
           
private  java.util.List binders
           
private static java.util.List noBinders
           
static Constraint True
          The trivial constraint.
 
Fields inherited from class bossa.syntax.Node
children, currentFunction, down, global, none, propagate, scope, thisExp, typeScope, upper
 
Constructor Summary
Constraint(java.util.List binders, java.util.List atomics)
          Creates the constraint \forall binders .
Constraint(mlsub.typing.TypeSymbol[] binders, java.util.List atomics)
           
 
Method Summary
(package private)  void addAtom(AtomicConstraint atom)
           
(package private)  void addAtoms(java.util.List l)
           
(package private)  void addBinder(mlsub.typing.TypeSymbol s)
          Add the binder if it is not already there.
(package private)  void addBinders(mlsub.typing.TypeSymbol[] bs)
          Adds binders that are not already present
(package private)  void addFirstBinder(mlsub.typing.TypeSymbol s)
          Add the binder to the front of the list of binders.
private  java.util.List arrayToList(java.lang.Object[] a)
           
private  java.util.List cloneList(java.util.List l)
           
private  void construct(java.util.List binders, java.util.List atomics)
           
(package private) static Constraint create(mlsub.typing.TypeSymbol[] binders)
           
(package private)  java.util.List getAtoms()
           
(package private)  mlsub.typing.TypeSymbol[] getBinderArray()
           
(package private)  java.util.List getBinders()
           
(package private)  mlsub.typing.Constraint resolveToLowlevel()
          Scoping
private  Constraint shallowClone()
          Returns a new constraint.
 java.lang.String toString()
          Printing
 
Methods inherited from class bossa.syntax.Node
addChild, addChildren, addFirstChild, addSymbol, addTypeMap, addTypeSymbol, addTypeSymbols, buildScope, buildScope, child, doResolve, doTypecheck, getCurrentFunction, getGlobalScope, getGlobalTypeScope, getScope, getTypeScope, removeChild, resolve, setCurrentFunction, setModule, typecheck
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

noBinders

private static final java.util.List noBinders

True

public static final Constraint True
The trivial constraint. This field is final, so pointer equality can be used to test whether a constraint is True.


binders

private java.util.List binders

atomics

private java.util.List atomics
Constructor Detail

Constraint

public Constraint(java.util.List binders,
                  java.util.List atomics)
Creates the constraint \forall binders . atomics


Constraint

public Constraint(mlsub.typing.TypeSymbol[] binders,
                  java.util.List atomics)
Method Detail

create

static Constraint create(mlsub.typing.TypeSymbol[] binders)

arrayToList

private java.util.List arrayToList(java.lang.Object[] a)

construct

private void construct(java.util.List binders,
                       java.util.List atomics)

shallowClone

private Constraint shallowClone()
Returns a new constraint. The lists are new, but the list elements are the same.


cloneList

private java.util.List cloneList(java.util.List l)

resolveToLowlevel

mlsub.typing.Constraint resolveToLowlevel()
Scoping


toString

public java.lang.String toString()
Printing


addFirstBinder

void addFirstBinder(mlsub.typing.TypeSymbol s)
Add the binder to the front of the list of binders.


addBinder

void addBinder(mlsub.typing.TypeSymbol s)
Add the binder if it is not already there.


addBinders

void addBinders(mlsub.typing.TypeSymbol[] bs)
Adds binders that are not already present


addAtom

void addAtom(AtomicConstraint atom)

addAtoms

void addAtoms(java.util.List l)

getBinders

java.util.List getBinders()

getAtoms

java.util.List getAtoms()

getBinderArray

mlsub.typing.TypeSymbol[] getBinderArray()