public class Interpreter extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
Interpreter.Environment |
static class |
Interpreter.Record |
class |
Interpreter.Result
A result simply catches the result of a given boolean expression, and the
environment which lead to that result.
|
static class |
Interpreter.UndefinedException |
| Constructor and Description |
|---|
Interpreter(Domain domain,
wybs.lang.NameResolver resolver,
TypeInvariantExtractor extractor) |
public Interpreter(Domain domain, wybs.lang.NameResolver resolver, TypeInvariantExtractor extractor)
public Interpreter.Result evaluate(WyalFile.Declaration.Assert a) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Interpreter.Result evaluateBlock(WyalFile.Stmt.Block block, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Interpreter.Result evaluateStatement(WyalFile.Stmt stmt, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Interpreter.Result evaluateIfThen(WyalFile.Stmt.IfThen stmt, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Interpreter.Result evaluateCaseOf(WyalFile.Stmt.CaseOf stmt, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Interpreter.Result evaluateExists(WyalFile.Stmt.ExistentialQuantifier stmt, Interpreter.Environment environment)
protected Interpreter.Result evaluateForAll(WyalFile.Stmt.UniversalQuantifier stmt, Interpreter.Environment environment)
protected Object evaluateExpression(WyalFile.Expr expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateConstant(WyalFile.Expr.Constant expr, Interpreter.Environment environment)
protected Object evaluateVariable(WyalFile.Expr.VariableAccess expr, Interpreter.Environment environment)
protected Object evaluateInvoke(WyalFile.Expr.Invoke expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected WyalFile.Declaration.Named resolve(WyalFile.Expr.Invoke ivk)
protected boolean evaluateLogicalAnd(WyalFile.Expr.LogicalAnd conjunct, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected boolean evaluateLogicalOr(WyalFile.Expr.LogicalOr disjunct, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected boolean evaluateLogicalNot(WyalFile.Expr.LogicalNot expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected boolean evaluateLogicalImplication(WyalFile.Expr.LogicalImplication expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected boolean evaluateLogicalIff(WyalFile.Expr.LogicalIff expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected boolean evaluateExistentialQuantifier(WyalFile.Expr.ExistentialQuantifier stmt, Interpreter.Environment environment)
protected boolean evaluateUniversalQuantifier(WyalFile.Expr.UniversalQuantifier stmt, Interpreter.Environment environment)
protected boolean evaluateEqual(WyalFile.Expr.Equal expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected boolean evaluateNotEqual(WyalFile.Expr.NotEqual expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected boolean equalsRecord(Interpreter.Record lhs, Interpreter.Record rhs)
protected boolean evaluateLessThan(WyalFile.Expr.LessThan expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected boolean evaluateLessThanOrEqual(WyalFile.Expr.LessThanOrEqual expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected boolean evaluateGreaterThan(WyalFile.Expr.GreaterThan expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected boolean evaluateGreaterThanOrEqual(WyalFile.Expr.GreaterThanOrEqual expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateNegation(WyalFile.Expr.Negation expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateAddition(WyalFile.Expr.Addition expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateSubtraction(WyalFile.Expr.Subtraction expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateMultiplication(WyalFile.Expr.Multiplication expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateDivision(WyalFile.Expr.Division expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateIs(WyalFile.Expr.Is expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateArrayAccess(WyalFile.Expr.ArrayAccess expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateArrayLength(WyalFile.Expr.ArrayLength expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateArrayInitialiser(WyalFile.Expr.ArrayInitialiser expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateArrayGenerator(WyalFile.Expr.ArrayGenerator expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateArrayUpdate(WyalFile.Expr.ArrayUpdate expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateRecordInitialiser(WyalFile.Expr.RecordInitialiser expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateRecordAccess(WyalFile.Expr.RecordAccess expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected Object evaluateRecordUpdate(WyalFile.Expr.RecordUpdate expr, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionprotected boolean isInstance(Object value, WyalFile.Type type) throws wybs.lang.NameResolver.ResolutionError, Interpreter.UndefinedException
wybs.lang.NameResolver.ResolutionErrorInterpreter.UndefinedExceptionprotected void checkTypeInvariants(wybs.util.AbstractCompilationUnit.Tuple<WyalFile.VariableDeclaration> vars, Interpreter.Environment environment) throws Interpreter.UndefinedException
Interpreter.UndefinedExceptionCopyright © 2017. All rights reserved.