DomainElement
Keywords: yacs.domain.DomainElement class

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## yacs.domain
Class DomainElement

    java.lang.Object
      yacs.domain.DomainElement

All Implemented Interfaces:
  java.lang.Cloneable, java.lang.Comparable, java.io.Serializable

Direct Known Subclasses:
  IntervalDomainElement, NumericFDElement, SymbolicFDElement

public abstract class DomainElement
extends java.lang.Object
implements java.lang.Comparable, java.lang.Cloneable, java.io.Serializable

Abstrakte Klasse zur Repräsentation von einzelnen Werten einer Domäne einer Constraint-Variable. Implementierungen dieser Klasse können z.B. Elemente für numerische finite Domänen, symbolische finite Domänen oder reellwertige Intervall-Domänen sein.

Copyright (C) 2005 Wolfgang Runte
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

Version:
  YACS 0.1.1
Author:
  Wolfgang Runte (woru@tzi.org)
See Also:
  Serialized Form

Constructor Summary
`DomainElement()`

Method Summary
`java.lang.Object` | `clone()` Liefert eine Kopie dieses Objekts.
`DomainElement` | `cloneDeep()` Klont `this` und rekursiv alle darin referenzierten Objekte mit (die Selbheit indirekt mehrfach referenzierter Objekte bleibt erhalten).
`int` | `compareTo(java.lang.Object param)` Bietet die Möglichkeit Instanzen dieser Klasse innerhalb einer `TreeMap` sortieren zu lassen.
`abstract DomainElement` | `divide(DomainElement param)` Methode zur Division zweier Elemente.
`abstract boolean` | `equals(DomainElement param)` Liefert `true`, wenn das Element gleich dem übergebenen Element ist, `false` wenn nicht.
`abstract java.lang.Object` | `getValue()` Liefert den Wert des Elements.
`abstract boolean` | `greaterAs(DomainElement param)` Liefert `true`, wenn das Element größer als das übergebenen Element ist, `false` wenn nicht.
`abstract boolean` | `greaterEqualAs(DomainElement param)` Liefert `true`, wenn das Element größer/gleich dem übergebenen Element ist, `false` wenn nicht.
`abstract boolean` | `lowerAs(DomainElement param)` Liefert `true`, wenn das Element kleiner als das übergebenen Element ist, `false` wenn nicht.
`abstract boolean` | `lowerEqualAs(DomainElement param)` Liefert `true`, wenn das Element kleiner/gleich dem übergebenen Element ist, `false` wenn nicht.
`abstract DomainElement` | `minus(DomainElement param)` Methode zur Subtraktion zweier Elemente.
`abstract boolean` | `notEquals(DomainElement param)` Liefert `true`, wenn das Element ungleich dem übergebenen Element ist, `false` wenn nicht.
`abstract DomainElement` | `plus(DomainElement param)` Methode zur Addition zweier Elemente.
`abstract DomainElement` | `times(DomainElement param)` Methode zur Multiplikation zweier Elemente.
`abstract java.lang.String` | `toString()` Liefert die Belegung dieses Elements als `String`.
`abstract DomainElement` | `uminus()` Liefert das Element mit negativem Vorzeichen.

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### DomainElement

    public DomainElement()

Method Detail

### getValue

    public abstract java.lang.Object getValue()

  Liefert den Wert des Elements.

  Returns:
    Object

### plus

    public abstract DomainElement plus(DomainElement param)

  Methode zur Addition zweier Elemente.

  Parameters:
    `param` - DomainElement
  Returns:
    DomainElement

### minus

    public abstract DomainElement minus(DomainElement param)

  Methode zur Subtraktion zweier Elemente.

  Parameters:
    `param` - DomainElement
  Returns:
    DomainElement

### times

    public abstract DomainElement times(DomainElement param)

  Methode zur Multiplikation zweier Elemente.

  Parameters:
    `param` - DomainElement
  Returns:
    DomainElement

### divide

    public abstract DomainElement divide(DomainElement param)

  Methode zur Division zweier Elemente.

  Parameters:
    `param` - DomainElement
  Returns:
    DomainElement

### uminus

    public abstract DomainElement uminus()

  Liefert das Element mit negativem Vorzeichen.

  Returns:
    DomainElement

### equals

    public abstract boolean equals(DomainElement param)

  Liefert `true`, wenn das Element gleich dem übergebenen Element ist, `false` wenn nicht.

  Parameters:
    `param` - DomainElement
  Returns:
    boolean

### notEquals

    public abstract boolean notEquals(DomainElement param)

  Liefert `true`, wenn das Element ungleich dem übergebenen Element ist, `false` wenn nicht.

  Parameters:
    `param` - DomainElement
  Returns:
    boolean

### greaterAs

    public abstract boolean greaterAs(DomainElement param)

  Liefert `true`, wenn das Element größer als das übergebenen Element ist, `false` wenn nicht.

  Parameters:
    `param` - DomainElement
  Returns:
    boolean

### lowerAs

    public abstract boolean lowerAs(DomainElement param)

  Liefert `true`, wenn das Element kleiner als das übergebenen Element ist, `false` wenn nicht.

  Parameters:
    `param` - DomainElement
  Returns:
    boolean

### greaterEqualAs

    public abstract boolean greaterEqualAs(DomainElement param)

  Liefert `true`, wenn das Element größer/gleich dem übergebenen Element ist, `false` wenn nicht.

  Parameters:
    `param` - DomainElement
  Returns:
    boolean

### lowerEqualAs

    public abstract boolean lowerEqualAs(DomainElement param)

  Liefert `true`, wenn das Element kleiner/gleich dem übergebenen Element ist, `false` wenn nicht.

  Parameters:
    `param` - DomainElement
  Returns:
    boolean

### toString

    public abstract java.lang.String toString()

  Liefert die Belegung dieses Elements als `String`.

  Returns:
    String

### compareTo

    public int compareTo(java.lang.Object param)

  Bietet die Möglichkeit Instanzen dieser Klasse innerhalb einer `TreeMap` sortieren zu lassen. Hierfür ist außerdem erforderlich, dass diese Klasse das Interface `Comparable` implementiert.

  Specified by:
    `compareTo` in interface `java.lang.Comparable`
  Parameters:
    `param` - Object
  Returns:
    int

### clone

    public java.lang.Object clone()

  Liefert eine Kopie dieses Objekts. Allerdings nur eine "shallow copy", d.h. die Felder des Objektes werden nicht geklont.

  Returns:
    Object

### cloneDeep

    public DomainElement cloneDeep()

  Klont `this` und rekursiv alle darin referenzierten Objekte mit (die Selbheit indirekt mehrfach referenzierter Objekte bleibt erhalten).

  Returns:
    DomainElement

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD