Class Observable<A>

java.lang.Object
eu.bandm.tools.paisley.Pattern<A>
eu.bandm.tools.paisley.Observable<A>
All Implemented Interfaces:
Serializable, Cloneable

public class Observable<A> extends Pattern<A>
See Also:
  • Constructor Details

    • Observable

      public Observable(Variable<A> variable)
  • Method Details

    • addObserver

      void addObserver(Observer o)
    • isBound

      boolean isBound()
    • match

      public boolean match(A target)
      Description copied from class: Pattern
      Attempts to match this pattern against a given object. If the class of this pattern imposes a specific order on matches, the first one is chosen.
      Specified by:
      match in class Pattern<A>
      Parameters:
      target - the object to match against
      Returns:
      true if the matching is successful, false if it fails. Which Variables are bound by a successful or failed match depends.
      See Also:
    • matchAgain

      public boolean matchAgain()
      Description copied from class: Pattern
      Attempts to re-match this pattern against a previously matched object. If the class of this pattern imposes a specific order on matches, they are chosen in that order, beginning with the second one. The behaviour of this method is unspecified if the last matching attempt of this pattern has not been successful.

      Patterns classes that do not override this method are deterministic. Pattern classes that overwrite this method to provide additional matches should also override Pattern.isDeterministic().

      Overrides:
      matchAgain in class Pattern<A>
      Returns:
      true if the matching is successful, false if it fails. Which Variables are bound by a successful match depends. The default implementation always returns false.
      See Also:
    • isDeterministic

      public boolean isDeterministic()
      Description copied from class: Pattern
      Checks whether this pattern is deterministic.

      The default implementation returns true.

      Overrides:
      isDeterministic in class Pattern<A>
      Returns:
      true if this pattern is guaranteed to match any object at most once, false otherwise.
      See Also:
    • clear

      public void clear(boolean recursively)
      Description copied from class: Pattern
      Disposes of all internal state related to results and nondeterminism.

      The default implementation does nothing.

      Overrides:
      clear in class Pattern<A>
      Parameters:
      recursively - true if all subpatterns should be deactivated, false otherwise.
    • toString

      public String toString()
      Overrides:
      toString in class Object