public class SyntaxPattern extends Pattern implements java.io.Externalizable
matchPatternMethod, typePattern
Constructor and Description |
---|
SyntaxPattern(java.lang.Object pattern,
java.lang.Object[] literal_identifiers,
Translator tr) |
SyntaxPattern(java.lang.String program,
java.lang.Object[] literals,
int varCount) |
Modifier and Type | Method and Description |
---|---|
static java.lang.Object[] |
allocVars(int varCount,
java.lang.Object[] outer)
The compiler calls this method to implement syntax-case.
|
void |
disassemble() |
void |
disassemble(java.io.PrintWriter ps,
Translator tr) |
static java.lang.Object[] |
getLiteralsList(java.lang.Object list,
SyntaxForm syntax,
Translator tr)
Parse the literals list in a syntax-rules or syntax-case.
|
static boolean |
literalIdentifierEq(java.lang.Object id1,
ScopeExp sc1,
java.lang.Object id2,
ScopeExp sc2) |
boolean |
match(java.lang.Object obj,
java.lang.Object[] vars,
int start_vars)
Match this Pattern against an Object.
|
boolean |
match(java.lang.Object obj,
java.lang.Object[] vars,
int start_vars,
int pc,
SyntaxForm syntax) |
void |
print(Consumer out) |
void |
readExternal(java.io.ObjectInput in) |
int |
varCount() |
void |
writeExternal(java.io.ObjectOutput out) |
public SyntaxPattern(java.lang.String program, java.lang.Object[] literals, int varCount)
public SyntaxPattern(java.lang.Object pattern, java.lang.Object[] literal_identifiers, Translator tr)
public boolean match(java.lang.Object obj, java.lang.Object[] vars, int start_vars)
Pattern
public void disassemble()
public void disassemble(java.io.PrintWriter ps, Translator tr)
public boolean match(java.lang.Object obj, java.lang.Object[] vars, int start_vars, int pc, SyntaxForm syntax)
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException
writeExternal
in interface java.io.Externalizable
java.io.IOException
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException
readExternal
in interface java.io.Externalizable
java.io.IOException
java.lang.ClassNotFoundException
public static java.lang.Object[] allocVars(int varCount, java.lang.Object[] outer)
public static boolean literalIdentifierEq(java.lang.Object id1, ScopeExp sc1, java.lang.Object id2, ScopeExp sc2)
public static java.lang.Object[] getLiteralsList(java.lang.Object list, SyntaxForm syntax, Translator tr)