action.getSourceName());
action.getSourceName(), 0);
    private synchronized void evaluate(Prototype prototype, Object code) {        if (code instanceof FunctionFile) {            FunctionFile funcfile = (FunctionFile) code;            File file = funcfile.getFile();            if (file != null) {                try {                    FileReader fr = new FileReader(file);                    updateEvaluator(prototype, fr, funcfile.getSourceName());                } catch (IOException iox) {                    app.logEvent("Error updating function file: " + iox);                }            } else {                StringReader reader = new StringReader(funcfile.getContent());                updateEvaluator(prototype, reader, funcfile.getSourceName());            }        } else if (code instanceof ActionFile) {            ActionFile action = (ActionFile) code;            RhinoActionAdapter fa = new RhinoActionAdapter(action);            try {                updateEvaluator(prototype, new StringReader(fa.function),                                action.getSourceName());            } catch (Exception esx) {                app.logEvent("Error parsing " + action + ": " + esx);            }        }    }