Определение интерпретатора: определяет грамматику языка и устанавливает интерпретатора для интерпретации предложений на языке.
Похоже, что интерпретатор не очень широкий. Давайте кратко рассмотрим.
Во -первых, создается интерфейс для описания общих операций.
Кода -копия выглядит следующим образом:
публичный интерфейс AbstractExpression {
void интерпретация (контекст контекста);
}
Давайте посмотрим на какую -то глобальную информацию, которая содержит переводчика
Кода -копия выглядит следующим образом:
контекст публичного интерфейса {}
Конкретная реализация AbstractExpression делится на два типа: экспрессия терминатора и экспрессия не выпускного.
открытый класс Terminalexpression реализует AbstractExpression {
public void интерпретация (контекст контекста) {}
}
Никаких правил в грамматике не требуется непрерывные выражения:
открытый класс unterminalexpression реализует AbstractExpression {
частная абстрактная преемник;
public void setSuccessor (преемник AbstractExpression) {
this.successor = преемник;
}
Public AbstractExpression getSuccessor () {
вернуть преемник;
}
public void интерпретация (контекст контекста) {}
}