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

Method call

chapter21/src/test/java/com/seaofnodes/simple/Eval2.java:211–221  ·  view source on GitHub ↗
( CallNode call )

Source from the content-addressed store, hash-verified

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