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

Method call

chapter18/src/test/java/com/seaofnodes/simple/Eval2.java:209–219  ·  view source on GitHub ↗
( CallNode call )

Source from the content-addressed store, hash-verified

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

Callers 15

evalMethod · 0.95
coFunction · 0.45
lrFunction · 0.45
YeFunction · 0.45
_oFunction · 0.45
mmapFunction · 0.45
QFunction · 0.45
rnFunction · 0.45
LnFunction · 0.45
d3.v7.min.jsFile · 0.45
kiFunction · 0.45
aFunction · 0.45

Calls 5

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

Tested by

no test coverage detected