public class JavaValue extends XNamedValue implements NodeDescriptorProvider, XValueTextProvider, XValueWithInlinePresentation
| Modifier and Type | Class and Description |
|---|---|
static class |
JavaValue.JavaFullValueEvaluator |
myName| Modifier | Constructor and Description |
|---|---|
protected |
JavaValue(JavaValue parent,
java.lang.String name,
ValueDescriptorImpl valueDescriptor,
EvaluationContextImpl evaluationContext,
NodeManagerImpl nodeManager,
boolean contextSet) |
protected |
JavaValue(JavaValue parent,
ValueDescriptorImpl valueDescriptor,
EvaluationContextImpl evaluationContext,
NodeManagerImpl nodeManager,
boolean contextSet) |
| Modifier and Type | Method and Description |
|---|---|
Promise<XExpression> |
calculateEvaluationExpression()
Asynchronously calculates expression which evaluates to the current value
|
boolean |
canBePinned() |
boolean |
canNavigateToTypeSource()
Return
true from this method and override XValue.computeTypeSourcePosition(XNavigatable) if navigation to the value's type
is supported for the value |
void |
computeChildren(XCompositeNode node)
Start computing children of the value.
|
ThreeState |
computeInlineDebuggerData(XInlineDebuggerDataCallback callback)
Provide inline debugger data, return ability to provide, use
ThreeState.UNSURE if unsupported (default platform implementation will be used),
ThreeState.YES if applicable
ThreeState.NO if not applicable |
java.lang.String |
computeInlinePresentation()
Value to be shown near variable in execution line (experimental feature).
|
void |
computePresentation(XValueNode node,
XValuePlace place)
Start computing presentation of the value in the debugger tree and call
XValueNode.setPresentation(javax.swing.Icon, String, String, boolean)
when computation is finished. |
void |
computeSourcePosition(XNavigatable navigatable)
Start computing source position of the value and call
XNavigatable.setSourcePosition(com.intellij.xdebugger.XSourcePosition)
when computation is finished. |
void |
computeTypeSourcePosition(XNavigatable navigatable)
Start computing source position of the value's type and call
XNavigatable.setSourcePosition(com.intellij.xdebugger.XSourcePosition)
when computation is finished. |
static JavaValue |
create(JavaValue parent,
ValueDescriptorImpl valueDescriptor,
EvaluationContextImpl evaluationContext,
NodeManagerImpl nodeManager,
boolean contextSet) |
static XValuePresentation |
createPresentation(ValueDescriptorImpl descriptor) |
ValueDescriptorImpl |
getDescriptor() |
EvaluationContextImpl |
getEvaluationContext() |
XInstanceEvaluator |
getInstanceEvaluator() |
XValueModifier |
getModifier() |
NodeManagerImpl |
getNodeManager() |
JavaValue |
getParent() |
Project |
getProject() |
XReferrersProvider |
getReferrersProvider()
This enables showing referrers for the value
|
java.lang.String |
getTypeName() |
java.lang.String |
getValueText() |
void |
reBuild(XValueNodeImpl node) |
protected static boolean |
scheduleCommand(EvaluationContextImpl evaluationContext,
XCompositeNode node,
SuspendContextCommandImpl command) |
void |
setRenderer(NodeRenderer nodeRenderer,
XValueNodeImpl node) |
getName, toStringcanNavigateToSource, getEvaluationExpressionprotected JavaValue(JavaValue parent, ValueDescriptorImpl valueDescriptor, EvaluationContextImpl evaluationContext, NodeManagerImpl nodeManager, boolean contextSet)
protected JavaValue(JavaValue parent, java.lang.String name, ValueDescriptorImpl valueDescriptor, EvaluationContextImpl evaluationContext, NodeManagerImpl nodeManager, boolean contextSet)
public java.lang.String getTypeName()
public boolean canBePinned()
public static JavaValue create(JavaValue parent, ValueDescriptorImpl valueDescriptor, EvaluationContextImpl evaluationContext, NodeManagerImpl nodeManager, boolean contextSet)
public JavaValue getParent()
public ValueDescriptorImpl getDescriptor()
getDescriptor in interface NodeDescriptorProviderpublic EvaluationContextImpl getEvaluationContext()
public NodeManagerImpl getNodeManager()
public void computePresentation(XValueNode node, XValuePlace place)
XValueXValueNode.setPresentation(javax.swing.Icon, String, String, boolean)
when computation is finished.
Note that this method is called from the Event Dispatch thread so it should return quickly.computePresentation in class XValuenode - nodeplace - where the node will be shown.public static XValuePresentation createPresentation(ValueDescriptorImpl descriptor)
public void computeChildren(XCompositeNode node)
XValueContainerXCompositeNode.addChildren(XValueChildrenList, boolean) to add child nodes.
Note that this method is called from the Event Dispatch thread so it should return quickly.computeChildren in class XValueContainernode - node in the treeprotected static boolean scheduleCommand(EvaluationContextImpl evaluationContext, XCompositeNode node, SuspendContextCommandImpl command)
public void computeSourcePosition(XNavigatable navigatable)
XValueXNavigatable.setSourcePosition(com.intellij.xdebugger.XSourcePosition)
when computation is finished.
Note that this method is called from the Event Dispatch thread so it should return quickly.computeSourcePosition in class XValuenavigatable - navigatablepublic ThreeState computeInlineDebuggerData(XInlineDebuggerDataCallback callback)
XValueThreeState.UNSURE if unsupported (default platform implementation will be used),
ThreeState.YES if applicable
ThreeState.NO if not applicablecomputeInlineDebuggerData in class XValuepublic Project getProject()
public boolean canNavigateToTypeSource()
XValuetrue from this method and override XValue.computeTypeSourcePosition(XNavigatable) if navigation to the value's type
is supported for the valuecanNavigateToTypeSource in class XValuetrue if navigation to the value's type is supportedpublic void computeTypeSourcePosition(XNavigatable navigatable)
XValueXNavigatable.setSourcePosition(com.intellij.xdebugger.XSourcePosition)
when computation is finished.
Note that this method is called from the Event Dispatch thread so it should return quickly.computeTypeSourcePosition in class XValuepublic XValueModifier getModifier()
getModifier in class XValueXValueModifier instance which can be used to modify the valuepublic Promise<XExpression> calculateEvaluationExpression()
XValuecalculateEvaluationExpression in class XValuepublic java.lang.String getValueText()
getValueText in interface XValueTextProviderpublic XReferrersProvider getReferrersProvider()
XValuegetReferrersProvider in class XValuepublic XInstanceEvaluator getInstanceEvaluator()
getInstanceEvaluator in class XValuepublic void setRenderer(NodeRenderer nodeRenderer, XValueNodeImpl node)
public void reBuild(XValueNodeImpl node)
public java.lang.String computeInlinePresentation()
XValueWithInlinePresentationcomputeInlinePresentation in interface XValueWithInlinePresentation