kawa.lang

Class Pattern

public abstract class Pattern extends Object implements Printable

A Pattern is used to match against objects. E.g. it can be used to match against macro arguments.
Field Summary
static MethodmatchPatternMethod
static ClassTypetypePattern
Method Summary
Object[]match(Object obj)
Match this Pattern against an object.
abstract booleanmatch(Object obj, Object[] vars, int start_vars)
Match this Pattern against an Object.
abstract intvarCount()

Field Detail

matchPatternMethod

public static final Method matchPatternMethod

typePattern

public static ClassType typePattern

Method Detail

match

public Object[] match(Object obj)
Match this Pattern against an object.

Parameters: obj object to match against this pattern

Returns: null on failure, or an array of bound pattern variables.

match

public abstract boolean match(Object obj, Object[] vars, int start_vars)
Match this Pattern against an Object.

Parameters: obj the Object to match against vars the "pattern variable" values extracted from obj go here start_vars where in vars to strt putting the varCount() values

Returns: true iff the match succeeded.

varCount

public abstract int varCount()