Package kawa.lang
Class SyntaxPattern
java.lang.Object
kawa.lang.Pattern
kawa.lang.SyntaxPattern
- All Implemented Interfaces:
gnu.kawa.format.Printable,Externalizable,Serializable
This encodes a pattern from a Scheem syntax-case or syntax-rules.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic booleanControl logging to standard error on successful pattern match.static final SimpleSymbolFields inherited from class kawa.lang.Pattern
matchPatternMethod, typePattern -
Constructor Summary
ConstructorsConstructorDescriptionSyntaxPattern(Object pattern, Object[] literal_identifiers, Translator tr) SyntaxPattern(String program, Object[] literals, int varCount, String fileLine) -
Method Summary
Modifier and TypeMethodDescriptionstatic Object[]The compiler calls this method to implement syntax-case.voidvoiddisassemble(PrintWriter ps, Translator tr) static Object[]getLiteralsList(Object list, SyntaxForm syntax, Translator tr) Parse the literals list in a syntax-rules or syntax-case.static booleanliteralIdentifierEq(Object id1, ScopeExp sc1, Object id2, ScopeExp sc2) booleanMatch this Pattern against an Object.booleanmatch(Object obj, Object[] vars, int start_vars, int pc, SyntaxForm syntax) voidtoString()intvarCount()void
-
Field Details
-
underscoreSymbol
-
printSyntaxPatternMatch
public static boolean printSyntaxPatternMatchControl logging to standard error on successful pattern match.
-
-
Constructor Details
-
SyntaxPattern
-
SyntaxPattern
-
-
Method Details
-
varCount
public int varCount() -
match
Description copied from class:PatternMatch this Pattern against an Object. -
disassemble
public void disassemble() -
disassemble
-
match
-
writeExternal
- Specified by:
writeExternalin interfaceExternalizable- Throws:
IOException
-
readExternal
- Specified by:
readExternalin interfaceExternalizable- Throws:
IOExceptionClassNotFoundException
-
allocVars
The compiler calls this method to implement syntax-case. -
literalIdentifierEq
-
getLiteralsList
Parse the literals list in a syntax-rules or syntax-case. -
toString
-