public abstract class XDebugAbstractValue extends XDebugElement implements IValue {
private IVariable[] fVariables;
- protected String fValueString;
- protected String fTypeName;
+ private String fValueString;
+ private String fTypeName;
private boolean fhasChanged;
- public XDebugAbstractValue(XDebugStackFrame frame, Node varNode) {
- super((XDebugTarget) frame.getDebugTarget());
+ public XDebugAbstractValue(XDebugStackFrame frame, Node varNode) throws DebugException {
+ super(frame == null ? null : (XDebugTarget) frame.getDebugTarget());
fTypeName = PHPDebugUtils.getAttributeValue(varNode,"type");
return (fVariables.length > 0);
}
- public abstract void renderValueString(String data);
+ public abstract void renderValueString(String data) throws DebugException;
public abstract boolean verifyValue(String expression);
- public boolean setValue(String expression) {
+ public boolean setValue(String expression) throws DebugException {
if (!verifyValue(expression)) {
return false;
}
public boolean supportsValueModification() {
return false;
}
+
+ public void setValueString(String valueString) {
+ fValueString = valueString;
+ }
}
\ No newline at end of file