/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package dbgplot; //import javax.swing.ProgressMonitor; import dbgplot.evaluator.spi.Evaluator; import dbgplot.evaluator.spi.Returner; import javax.swing.ProgressMonitor; import org.openide.util.lookup.ServiceProvider; //import org.netbeans.api.debugger.DebuggerEngine; //import org.netbeans.api.debugger.DebuggerManager; //import org.netbeans.modules.cnd.debugger.gdb2.GdbDebuggerImpl; //import org.netbeans.modules.cnd.debugger.gdb2.mi.MICommand; //import org.netbeans.modules.cnd.debugger.gdb2.mi.MIRecord; //import org.netbeans.modules.cnd.debugger.gdb2.mi.MIUserInteraction; /** * * @author Will Shackleford<wshackle@gmail.com> */ @ServiceProvider(service = Evaluator.class) public class CppGdbEvaluator implements Evaluator { @Override public void evaluate(String expr, final String mapper, ProgressMonitor pm, final Returner r, boolean showGetters) { throw new java.lang.UnknownError("C++ / GDB still not supported."); // try { // final DebuggerManager dm = DebuggerManager.getDebuggerManager(); // if (null == dm) { // System.err.println("DebuggerManager.getDebuggerManager() == null"); // r.returnResult(null); // return; // } // DebuggerEngine currentEngine = dm.getCurrentEngine(); // if (currentEngine == null) { // System.err.println("currentEngine == null"); // r.returnResult(null); // return; // } // final GdbDebuggerImpl d = currentEngine.lookupFirst(null, GdbDebuggerImpl.class); // if (d == null) { // System.err.println("JPDADebugger == null"); // r.returnResult(null); // return; // } // MICommand cmd = new MICommand(0, expr) { // @Override // protected void onDone(MIRecord record) { // final String res; // if (!record.isError()) { // res = record.results().getConstValue("value"); //NOI18N // } else { // res = record.error(); // } // r.returnResult(res); // } // // @Override // protected void onRunning(MIRecord mir) { // } // // @Override // protected void onError(MIRecord mir) { // } // // @Override // protected void onExit(MIRecord mir) { // } // // @Override // protected void onStopped(MIRecord mir) { // } // // @Override // protected void onOther(MIRecord mir) { // } // // @Override // protected void onUserInteraction(MIUserInteraction miui) { // } // }; // // Gdb gdb = d.gdb(); // } catch (Exception e) { // e.printStackTrace(); // } // return; } @Override public boolean isValid() { // TODO: implement this function return (boolean) false; } }