本文整理汇总了Java中com.intellij.xdebugger.breakpoints.XLineBreakpoint.getConditionExpression方法的典型用法代码示例。如果您正苦于以下问题:Java XLineBreakpoint.getConditionExpression方法的具体用法?Java XLineBreakpoint.getConditionExpression怎么用?Java XLineBreakpoint.getConditionExpression使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.intellij.xdebugger.breakpoints.XLineBreakpoint
的用法示例。
在下文中一共展示了XLineBreakpoint.getConditionExpression方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: tryEvaluateBreakpointCondition
import com.intellij.xdebugger.breakpoints.XLineBreakpoint; //导入方法依赖的package包/类
public boolean tryEvaluateBreakpointCondition(@NotNull DotNetThreadProxy threadProxy, final XLineBreakpoint<?> breakpoint, final DotNetDebugContext debugContext) throws Exception
{
final XExpression conditionExpression = breakpoint.getConditionExpression();
if(conditionExpression == null)
{
return true;
}
DotNetStackFrameProxy frame = threadProxy.getFrame(0);
if(frame == null)
{
return true;
}
XValue value = evaluateBreakpointExpression(frame, breakpoint, conditionExpression, debugContext);
if(value instanceof DotNetAbstractVariableValueNode)
{
DotNetValueProxy valueOfVariableSafe = ((DotNetAbstractVariableValueNode) value).getValueOfVariable();
if(valueOfVariableSafe instanceof DotNetBooleanValueProxy)
{
return ((DotNetBooleanValueProxy) valueOfVariableSafe).getValue();
}
}
return true;
}
示例2: showDebugInformation
import com.intellij.xdebugger.breakpoints.XLineBreakpoint; //导入方法依赖的package包/类
private void showDebugInformation() {
final XSourcePositionWrapper wrapper = new XSourcePositionWrapper(getCurrentPosition());
final XLineBreakpoint<XBreakpointProperties> breakpoint = myBreakpoints.get(wrapper);
final XDebugSession session = getSession();
final XSuspendContext suspendContext = myStack.getSuspendContext();
if (breakpoint != null) {
final XDebuggerEvaluator evaluator = getActiveEvaluator();
final XExpression conditionExpression = breakpoint.getConditionExpression();
if (evaluator != null && conditionExpression != null) {
evaluator.evaluate(
conditionExpression,
new EvaluationCallback(breakpoint, suspendContext),
null
);
}
else if (!session.breakpointReached(breakpoint, null, suspendContext)) { // 2nd arg is printed to console when breakpoint is reached
resume();
}
}
else {
session.positionReached(suspendContext);
myTempBreakpoints.remove(wrapper);
}
TheRGraphicsUtils.getGraphicsState(session.getProject()).refresh(true);
}
示例3: toMuleBreakpoint
import com.intellij.xdebugger.breakpoints.XLineBreakpoint; //导入方法依赖的package包/类
@NotNull
public static Breakpoint toMuleBreakpoint(Project project, XLineBreakpoint<XBreakpointProperties> lineBreakpoint, @Nullable Map<String, String> modulesToAppsMap) {
final XSourcePosition sourcePosition = lineBreakpoint.getSourcePosition();
final XExpression conditionExpression = lineBreakpoint.getConditionExpression();
return toMuleBreakpoint(project, sourcePosition, conditionExpression, modulesToAppsMap);
}
示例4: getExpression
import com.intellij.xdebugger.breakpoints.XLineBreakpoint; //导入方法依赖的package包/类
@Nullable
private String getExpression(@NotNull XLineBreakpoint<XBreakpointProperties> lineBreakpoint)
{
final XExpression conditionExpression = lineBreakpoint.getConditionExpression();
return conditionExpression != null ? conditionExpression.getExpression() : null;
}