on master help sign in
Debugger: use object prototype to only specify which properties we want to overwrite.
e327ac0Laszlo Pandy
runtime/Debugger.js+5−8
@@ -111,15 +111,12 @@ function debugModule(module, runtime) {
111 return programPaused;
111 return programPaused;
112 }
112 }
113
113
114+ // runtime is the prototype of wrappedRuntime
115+ // so we can access all runtime properties too
114− var wrappedRuntime = {
116+ var wrappedRuntime = Object.create(runtime, {
115 notify: wrapNotify,
117 notify: wrapNotify,
116− runDelayed: wrapRunDelayed,
118+ runDelayed: wrapRunDelayed
117− node: runtime.node,
118− display: runtime.display,
119− id: runtime.id,
120− addListener: runtime.addListener,
121− inputs: runtime.inputs
122− };
119+ });
123
120
124 var moduleInstance = module.make(wrappedRuntime);
121 var moduleInstance = module.make(wrappedRuntime);
125 var moduleNodes = flattenNodes(wrappedRuntime.inputs);
122 var moduleNodes = flattenNodes(wrappedRuntime.inputs);