MCPcopy Create free account
hub / github.com/SeaOfNodes/Simple / call

Method call

chapter22/src/test/java/com/seaofnodes/simple/Eval2.java:210–220  ·  view source on GitHub ↗
( CallNode call )

Source from the content-addressed store, hash-verified

208
209 // Make a call.
210 private static CFGNode call( CallNode call ) {
211 // Set up the Return PC and return frame (which is just the current frame).
212 // Really making a Continuation, but it's just a Closure
213 Closure cont = new Closure(call.cend(),F);
214 // Set the return continuation into the current frame RPC
215 F.put(call, cont );
216 // Next Frame to use
217 F = new Frame(F);
218 // Target function and environment
219 return CODE.link(tfp(call.fptr()));
220 }
221
222 private static CFGNode ret( ReturnNode ret ) {
223 // Fetch return expression value and continuation from current frame

Callers 1

evalMethod · 0.95

Calls 5

tfpMethod · 0.95
cendMethod · 0.45
putMethod · 0.45
linkMethod · 0.45
fptrMethod · 0.45

Tested by

no test coverage detected