1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-06 17:26:01 +02:00

Cosmetics.

This commit is contained in:
Sergey Prigogin 2013-07-30 19:01:33 -07:00
parent bfabd2198e
commit 601790eebf
2 changed files with 28 additions and 21 deletions

View file

@ -6,7 +6,7 @@
* http://www.eclipse.org/legal/epl-v10.html * http://www.eclipse.org/legal/epl-v10.html
* *
* Contributors: * Contributors:
* Markus Schorn - initial API and implementation * Markus Schorn - initial API and implementation
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.internal.core.parser.scanner; package org.eclipse.cdt.internal.core.parser.scanner;
@ -106,7 +106,9 @@ abstract class PreprocessorMacro implements IMacroBinding {
buf.append(')'); buf.append(')');
return buf.toString(); return buf.toString();
} }
public abstract TokenList getTokens(MacroDefinitionParser parser, LexerOptions lexOptions, MacroExpander expander);
public abstract TokenList getTokens(MacroDefinitionParser parser, LexerOptions lexOptions,
MacroExpander expander);
} }
class ObjectStyleMacro extends PreprocessorMacro { class ObjectStyleMacro extends PreprocessorMacro {
@ -115,12 +117,12 @@ class ObjectStyleMacro extends PreprocessorMacro {
final int fEndOffset; final int fEndOffset;
private TokenList fExpansionTokens; private TokenList fExpansionTokens;
public ObjectStyleMacro(char[] name, char[] expansion) { public ObjectStyleMacro(char[] name, char[] expansion) {
this(name, 0, expansion.length, null, new CharArray(expansion)); this(name, 0, expansion.length, null, new CharArray(expansion));
} }
public ObjectStyleMacro(char[] name, int expansionOffset, int endOffset, TokenList expansion, AbstractCharArray source) { public ObjectStyleMacro(char[] name, int expansionOffset, int endOffset, TokenList expansion,
AbstractCharArray source) {
super(name); super(name);
fExpansionOffset= expansionOffset; fExpansionOffset= expansionOffset;
fEndOffset= endOffset; fEndOffset= endOffset;
@ -168,7 +170,8 @@ class ObjectStyleMacro extends PreprocessorMacro {
Lexer lex= new Lexer(fExpansion, fExpansionOffset, fEndOffset, lexOptions, ILexerLog.NULL, this); Lexer lex= new Lexer(fExpansion, fExpansionOffset, fEndOffset, lexOptions, ILexerLog.NULL, this);
try { try {
lex.nextToken(); // consume the start token lex.nextToken(); // consume the start token
mdp.parseExpansion(lex, ILexerLog.NULL, getNameCharArray(), getParameterPlaceholderList(), fExpansionTokens); mdp.parseExpansion(lex, ILexerLog.NULL, getNameCharArray(),
getParameterPlaceholderList(), fExpansionTokens);
} catch (OffsetLimitReachedException e) { } catch (OffsetLimitReachedException e) {
} }
} }
@ -200,8 +203,8 @@ class FunctionStyleMacro extends ObjectStyleMacro {
this(name, paramList, hasVarArgs, expansionOffset, expansionEndOffset, null, expansion); this(name, paramList, hasVarArgs, expansionOffset, expansionEndOffset, null, expansion);
} }
public FunctionStyleMacro(char[] name, char[][] paramList, int hasVarArgs, int expansionFileOffset, int endFileOffset, public FunctionStyleMacro(char[] name, char[][] paramList, int hasVarArgs, int expansionFileOffset,
TokenList expansion, AbstractCharArray source) { int endFileOffset, TokenList expansion, AbstractCharArray source) {
super(name, expansionFileOffset, endFileOffset, expansion, source); super(name, expansionFileOffset, endFileOffset, expansion, source);
fParamList = paramList; fParamList = paramList;
fHasVarArgs= hasVarArgs; fHasVarArgs= hasVarArgs;
@ -210,22 +213,22 @@ class FunctionStyleMacro extends ObjectStyleMacro {
@Override @Override
public char[][] getParameterList() { public char[][] getParameterList() {
final int length = fParamList.length; final int length = fParamList.length;
if (fHasVarArgs == NO_VAARGS || length==0) { if (fHasVarArgs == NO_VAARGS || length == 0) {
return fParamList; return fParamList;
} }
char[][] result= new char[length][]; char[][] result= new char[length][];
System.arraycopy(fParamList, 0, result, 0, length-1); System.arraycopy(fParamList, 0, result, 0, length - 1);
if (fHasVarArgs == VAARGS) { if (fHasVarArgs == VAARGS) {
result[length-1]= Keywords.cpELLIPSIS; result[length - 1]= Keywords.cpELLIPSIS;
} }
else { else {
final char[] param= fParamList[length-1]; final char[] param= fParamList[length - 1];
final int plen= param.length; final int plen= param.length;
final int elen = Keywords.cpELLIPSIS.length; final int elen = Keywords.cpELLIPSIS.length;
final char[] rp= new char[plen+elen]; final char[] rp= new char[plen + elen];
System.arraycopy(param, 0, rp, 0, plen); System.arraycopy(param, 0, rp, 0, plen);
System.arraycopy(Keywords.cpELLIPSIS, 0, rp, plen, elen); System.arraycopy(Keywords.cpELLIPSIS, 0, rp, plen, elen);
result[length-1]= rp; result[length - 1]= rp;
} }
return result; return result;
} }
@ -244,13 +247,13 @@ class FunctionStyleMacro extends ObjectStyleMacro {
result.append(getName()); result.append(getName());
result.append('('); result.append('(');
final int lastIdx= fParamList.length-1; final int lastIdx= fParamList.length - 1;
if (lastIdx >= 0) { if (lastIdx >= 0) {
for (int i = 0; i < lastIdx; i++) { for (int i = 0; i < lastIdx; i++) {
result.append(fParamList[i]); result.append(fParamList[i]);
result.append(','); result.append(',');
} }
switch(fHasVarArgs) { switch (fHasVarArgs) {
case VAARGS: case VAARGS:
result.append(Keywords.cpELLIPSIS); result.append(Keywords.cpELLIPSIS);
break; break;
@ -316,10 +319,12 @@ abstract class DynamicMacro extends PreprocessorMacro {
public DynamicMacro(char[] name) { public DynamicMacro(char[] name) {
super(name); super(name);
} }
@Override @Override
public final char[] getExpansion() { public final char[] getExpansion() {
return getExpansionImage(); return getExpansionImage();
} }
public abstract Token execute(MacroExpander expander); public abstract Token execute(MacroExpander expander);
@Override @Override
@ -439,7 +444,8 @@ final class TimeMacro extends DynamicMacro {
final class CounterMacro extends DynamicMacro { final class CounterMacro extends DynamicMacro {
private static final char[] ZERO = {'0'}; private static final char[] ZERO = {'0'};
private long fValue= 0; private long fValue;
CounterMacro(char[] name) { CounterMacro(char[] name) {
super(name); super(name);
} }

View file

@ -360,12 +360,13 @@ public class PDOMMacro implements IIndexMacro, IPDOMBinding, IASTFileLocation {
public char[][] getParameterPlaceholderList() { public char[][] getParameterPlaceholderList() {
char[][] params= getParameterList(); char[][] params= getParameterList();
if (params != null && params.length > 0) { if (params != null && params.length > 0) {
char[] lastParam= params[params.length-1]; char[] lastParam= params[params.length - 1];
if (CharArrayUtils.equals(lastParam, 0, Keywords.cpELLIPSIS.length, Keywords.cpELLIPSIS)) { if (CharArrayUtils.equals(lastParam, 0, Keywords.cpELLIPSIS.length, Keywords.cpELLIPSIS)) {
char[][] result= new char[params.length][]; char[][] result= new char[params.length][];
System.arraycopy(params, 0, result, 0, params.length-1); System.arraycopy(params, 0, result, 0, params.length - 1);
result[params.length-1]= lastParam.length == Keywords.cpELLIPSIS.length ? Keywords.cVA_ARGS : result[params.length - 1]= lastParam.length == Keywords.cpELLIPSIS.length ?
CharArrayUtils.extract(lastParam, Keywords.cpELLIPSIS.length, lastParam.length-Keywords.cpELLIPSIS.length); Keywords.cVA_ARGS :
CharArrayUtils.extract(lastParam, Keywords.cpELLIPSIS.length, lastParam.length - Keywords.cpELLIPSIS.length);
return result; return result;
} }
} }
@ -419,7 +420,7 @@ public class PDOMMacro implements IIndexMacro, IPDOMBinding, IASTFileLocation {
@Override @Override
public String[] getQualifiedName() { public String[] getQualifiedName() {
return new String[]{getName()}; return new String[] { getName() };
} }
@Override @Override