ix.util.match
Class Matcher

java.lang.Object
  extended by ix.util.match.Matcher

public final class Matcher
extends java.lang.Object

A less simple pattern-matcher.


Field Summary
static MatchEnv emptyEnv
          emptyEnv is used to return non-null without allocating an env.
static Symbol ITEM_WILD
           
static Symbol REST
           
 
Constructor Summary
Matcher()
           
 
Method Summary
static java.lang.Object deref(Variable var, MatchEnv env)
           
static MatchEnv match(java.lang.Object pat, java.lang.Object dat)
          Match tries to match a pattern against an object.
static MatchEnv match(java.lang.Object pat, java.lang.Object dat, MatchEnv env)
           
static MatchEnv mustMatch(java.lang.Object pat, java.lang.Object dat)
           
static MatchEnv mustMatch(java.lang.Object pat, java.lang.Object dat, MatchEnv env)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

emptyEnv

public static final MatchEnv emptyEnv
emptyEnv is used to return non-null without allocating an env.


REST

public static final Symbol REST

ITEM_WILD

public static final Symbol ITEM_WILD
Constructor Detail

Matcher

public Matcher()
Method Detail

mustMatch

public static final MatchEnv mustMatch(java.lang.Object pat,
                                       java.lang.Object dat)

mustMatch

public static final MatchEnv mustMatch(java.lang.Object pat,
                                       java.lang.Object dat,
                                       MatchEnv env)

match

public static final MatchEnv match(java.lang.Object pat,
                                   java.lang.Object dat)
Match tries to match a pattern against an object.

Tries to handle Variables as well as ItemVars.

See Also:
SimpleMatcher, MatchEnv, ItemVar, Variable

match

public static final MatchEnv match(java.lang.Object pat,
                                   java.lang.Object dat,
                                   MatchEnv env)

deref

public static final java.lang.Object deref(Variable var,
                                           MatchEnv env)