// (c) Tuomas J. Lukka package org.fenfire.lava; import org.fenfire.util.*; import java.lang.reflect.*; /** An implementation of DirectFunctional that * just uses direct calls. */ public class DirectFunctional extends Functional { private class DirectNode implements Node { private final Function f; public DirectNode(Function f) { this.f = f; } public Function getCallableFunction() { return f; } } public Node createNode( Object id, Class functionClass, Object[] parameters0 ) { Constructor constructor = selectConstructor(functionClass, parameters0); Object[] parameters = new Object[parameters0.length]; System.arraycopy(parameters0, 0, parameters, 0, parameters0.length); // Replace Nodes with their Functions for(int i=0; i