From 90097c4febd0da1745907ce94f96fb2f4eb07088 Mon Sep 17 00:00:00 2001 From: Mikhail Khodjaiants Date: Fri, 26 Nov 2004 19:23:45 +0000 Subject: [PATCH] Do not use "void" if parameter's list is empty when constructing a function or method name for function breakpoints. Name mapping should be done on the implementation level. --- debug/org.eclipse.cdt.debug.ui/ChangeLog | 5 +++ .../ui/actions/ToggleBreakpointAdapter.java | 40 +++++++------------ 2 files changed, 19 insertions(+), 26 deletions(-) diff --git a/debug/org.eclipse.cdt.debug.ui/ChangeLog b/debug/org.eclipse.cdt.debug.ui/ChangeLog index 4a7da3639eb..fba63132346 100644 --- a/debug/org.eclipse.cdt.debug.ui/ChangeLog +++ b/debug/org.eclipse.cdt.debug.ui/ChangeLog @@ -1,3 +1,8 @@ +2004-11-26 Mikhail Khodjaiants + Do not use "void" if parameter's list is empty when constructing a function or + method name for function breakpoints. Name mapping should be done on the implementation level. + * ToggleBreakpointAdapter.java + 2004-11-25 Mikhail Khodjaiants Fix for bug 79452: Unable to set a breakpoint on a class method. * plugin.xml diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointAdapter.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointAdapter.java index ce5547887e0..bd5894ef543 100644 --- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointAdapter.java +++ b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ToggleBreakpointAdapter.java @@ -15,6 +15,7 @@ import org.eclipse.cdt.core.model.CModelException; import org.eclipse.cdt.core.model.ICElement; import org.eclipse.cdt.core.model.IDeclaration; import org.eclipse.cdt.core.model.IFunction; +import org.eclipse.cdt.core.model.IFunctionDeclaration; import org.eclipse.cdt.core.model.IMethod; import org.eclipse.cdt.core.model.ISourceRange; import org.eclipse.cdt.core.model.ITranslationUnit; @@ -384,19 +385,7 @@ public class ToggleBreakpointAdapter implements IToggleBreakpointsTarget { StringBuffer name = new StringBuffer( functionName ); ITranslationUnit tu = function.getTranslationUnit(); if ( tu != null && tu.isCXXLanguage() ) { - String[] params = function.getParameterTypes(); - name.append( '(' ); - if ( params.length == 0 ) { - name.append( "void" ); //$NON-NLS-1$ - } - else { - for( int i = 0; i < params.length; ++i ) { - name.append( params[i] ); - if ( i != params.length - 1 ) - name.append( ',' ); - } - } - name.append( ')' ); + appendParameters( name, function ); } return name.toString(); } @@ -410,22 +399,21 @@ public class ToggleBreakpointAdapter implements IToggleBreakpointsTarget { parent = parent.getParent(); } name.append( methodName ); - String[] params = method.getParameterTypes(); - name.append( '(' ); - if ( params.length == 0 ) { - name.append( "void" ); //$NON-NLS-1$ - } - else { - for( int i = 0; i < params.length; ++i ) { - name.append( params[i] ); - if ( i != params.length - 1 ) - name.append( ',' ); - } - } - name.append( ')' ); + appendParameters( name, method ); return name.toString(); } + private void appendParameters( StringBuffer sb, IFunctionDeclaration fd ) { + String[] params = fd.getParameterTypes(); + sb.append( '(' ); + for( int i = 0; i < params.length; ++i ) { + sb.append( params[i] ); + if ( i != params.length - 1 ) + sb.append( ',' ); + } + sb.append( ')' ); + } + private String getVariableName( IVariable variable ) { return variable.getElementName(); }