本文整理匯總了Java中com.intellij.debugger.ui.impl.watch.DebuggerTreeNodeExpression類的典型用法代碼示例。如果您正苦於以下問題:Java DebuggerTreeNodeExpression類的具體用法?Java DebuggerTreeNodeExpression怎麽用?Java DebuggerTreeNodeExpression使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
DebuggerTreeNodeExpression類屬於com.intellij.debugger.ui.impl.watch包,在下文中一共展示了DebuggerTreeNodeExpression類的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: createDescriptorByNode
import com.intellij.debugger.ui.impl.watch.DebuggerTreeNodeExpression; //導入依賴的package包/類
@Override
public void createDescriptorByNode(Object node, final ResultConsumer<Pair<NodeDescriptorImpl, String>> resultConsumer) {
if (node instanceof DebuggerTreeNodeImpl) {
final DebuggerTreeNodeImpl debuggerTreeNode = (DebuggerTreeNodeImpl)node;
final DebuggerContextImpl context = DebuggerManagerEx.getInstanceEx(myProject).getContext();
context.getDebugProcess().getManagerThread().schedule(new DebuggerContextCommandImpl(context) {
@Override
public void threadAction() {
try {
final TextWithImports evaluationText = DebuggerTreeNodeExpression.createEvaluationText(debuggerTreeNode, context);
resultConsumer.onSuccess(Pair.create(debuggerTreeNode.getDescriptor(), evaluationText.getText()));
}
catch (EvaluateException e) {
resultConsumer.onFailure(e);
}
}
});
}
}
示例2: setNodeAsRoot
import com.intellij.debugger.ui.impl.watch.DebuggerTreeNodeExpression; //導入依賴的package包/類
protected void setNodeAsRoot(final Object node) {
if (node instanceof DebuggerTreeNodeImpl) {
myValueHint.shiftLocation();
final DebuggerTreeNodeImpl debuggerTreeNode = (DebuggerTreeNodeImpl)node;
final DebuggerContextImpl context = (DebuggerManagerEx.getInstanceEx(myValueHint.getProject())).getContext();
context.getDebugProcess().getManagerThread().schedule(new DebuggerContextCommandImpl(context) {
public void threadAction() {
try {
final NodeDescriptorImpl descriptor = debuggerTreeNode.getDescriptor();
final TextWithImports evaluationText = DebuggerTreeNodeExpression.createEvaluationText(debuggerTreeNode, context);
final String title = evaluationText.getText();
addToHistory(Pair.create(descriptor, title));
myTree.setInspectDescriptor(descriptor);
myValueHint.showTreePopup(myTree, context, title, ValueHintTreeComponent.this);
}
catch (final EvaluateException e1) {
LOG.debug(e1);
}
}
});
}
}
示例3: getChildValueExpression
import com.intellij.debugger.ui.impl.watch.DebuggerTreeNodeExpression; //導入依賴的package包/類
public PsiExpression getChildValueExpression(DebuggerTreeNode node, DebuggerContext context) throws EvaluateException
{
Value expressionValue = getLastChildrenValue(node.getParent().getDescriptor());
if(expressionValue == null)
{
throw EvaluateExceptionUtil.createEvaluateException(DebuggerBundle.message("error.unable.to.evaluate.expression"));
}
NodeRenderer childrenRenderer = getChildrenRenderer(expressionValue, (ValueDescriptor) node.getParent().getDescriptor());
PsiExpression childrenPsiExpression = myChildrenExpression.getPsiExpression(node.getProject());
if(childrenPsiExpression == null)
{
return null;
}
return DebuggerTreeNodeExpression.substituteThis(childrenRenderer.getChildValueExpression(node, context), (PsiExpression) childrenPsiExpression.copy(), expressionValue);
}
示例4: getChildValueExpression
import com.intellij.debugger.ui.impl.watch.DebuggerTreeNodeExpression; //導入依賴的package包/類
public PsiExpression getChildValueExpression(DebuggerTreeNode node, DebuggerContext context) throws EvaluateException {
Value expressionValue = node.getParent().getDescriptor().getUserData(EXPRESSION_VALUE);
if (expressionValue == null) {
throw EvaluateExceptionUtil.createEvaluateException(DebuggerBundle.message("error.unable.to.evaluate.expression"));
}
NodeRenderer childrenRenderer = getChildrenRenderer(expressionValue, (ValueDescriptor) node.getParent().getDescriptor());
return DebuggerTreeNodeExpression.substituteThis(
childrenRenderer.getChildValueExpression(node, context),
(PsiExpression)myChildrenExpression.getPsiExpression(node.getProject()).copy(),
expressionValue);
}
示例5: substituteThis
import com.intellij.debugger.ui.impl.watch.DebuggerTreeNodeExpression; //導入依賴的package包/類
@Override
public PsiExpression substituteThis(PsiExpression expressionWithThis, PsiExpression howToEvaluateThis, Value howToEvaluateThisValue, StackFrameContext context)
throws EvaluateException {
return DebuggerTreeNodeExpression.substituteThis(expressionWithThis, howToEvaluateThis, howToEvaluateThisValue);
}
示例6: substituteThis
import com.intellij.debugger.ui.impl.watch.DebuggerTreeNodeExpression; //導入依賴的package包/類
public PsiExpression substituteThis(PsiExpression expressionWithThis, PsiExpression howToEvaluateThis, Value howToEvaluateThisValue, StackFrameContext context)
throws EvaluateException {
return DebuggerTreeNodeExpression.substituteThis(expressionWithThis, howToEvaluateThis, howToEvaluateThisValue);
}
示例7: substituteThis
import com.intellij.debugger.ui.impl.watch.DebuggerTreeNodeExpression; //導入依賴的package包/類
@Override
public PsiExpression substituteThis(PsiExpression expressionWithThis, PsiExpression howToEvaluateThis, Value howToEvaluateThisValue, StackFrameContext context) throws EvaluateException
{
return DebuggerTreeNodeExpression.substituteThis(expressionWithThis, howToEvaluateThis, howToEvaluateThisValue);
}