Examples of LateValueBinding


Examples of wyvern.tools.typedAST.core.binding.evaluation.LateValueBinding

  public Environment getFilledBody(AtomicReference<Value> objRef) {
    return evaluateDeclarations(
        Environment
            .getEmptyEnvironment()
            .extend(new LateValueBinding("this", objRef, getType())));
  }
View Full Code Here

Examples of wyvern.tools.typedAST.core.binding.evaluation.LateValueBinding

      classDecl = new ClassDeclaration("generic" + generic_num++, "", "", new DeclSequence(), mockEnv, new LinkedList<String>(), getLocation());
    }

    AtomicReference<Value> objRef = new AtomicReference<>();
    Environment evalEnv = env.extend(new LateValueBinding("this", objRef, ct));
    classDecl.evalDecl(evalEnv, classDecl.extendWithValue(Environment.getEmptyEnvironment()));
    final Environment ideclEnv = StreamSupport.stream(seq.getDeclIterator().spliterator(), false).
        reduce(evalEnv, (oenv,decl)->(decl instanceof ClassDeclaration)?decl.evalDecl(oenv):oenv, Environment::extend);
    Environment objenv = seq.bindDecls(ideclEnv, seq.extendWithDecls(classDecl.getFilledBody(objRef)));
    objRef.set(new Obj(objenv.extend(argValEnv)));
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.