@Override public Environment getGlobalEnvironment() { return new PublicClassEnvironment(assistantFactory, classes, null); }
protected Environment getAllClassesEnvronment() { return new PublicClassEnvironment(assistantFactory, classes, null); }
PublicClassEnvironment globals = new PublicClassEnvironment(assistantFactory, classes, null); Environment env = new PrivateClassEnvironment(assistantFactory, defaultClass, globals);
public static PExp tcExp(ClassList classes, PExp exp) throws AnalysisException, VDMErrorsException { TypeCheckerAssistantFactory af = new TypeCheckerAssistantFactory(); ClassTypeChecker.clearErrors(); ClassTypeChecker classTc = new ClassTypeChecker(classes, af); for (SClassDefinition c : classes) { clearTypeData(c); } classTc.typeCheck(); TypeCheckVisitor tc = new TypeCheckVisitor(); TypeChecker.clearErrors(); Environment env = new PublicClassEnvironment(af, classes, null); exp.apply(tc, new TypeCheckInfo(af, env, NameScope.NAMESANDSTATE)); if (TypeChecker.getErrorCount() > 0) { throw new VDMErrorsException(TypeChecker.getErrors()); } else { return exp; } }
classenv = new PublicClassEnvironment(question.assistantFactory, classdef);