diff --git a/pmd-core/src/main/java/net/sourceforge/pmd/cpd/token/AntlrToken.java b/pmd-core/src/main/java/net/sourceforge/pmd/cpd/token/AntlrToken.java new file mode 100644 index 0000000000..6df0fd1e50 --- /dev/null +++ b/pmd-core/src/main/java/net/sourceforge/pmd/cpd/token/AntlrToken.java @@ -0,0 +1,74 @@ +/** + * BSD-style license; for more info see http://pmd.sourceforge.net/license.html + */ + +package net.sourceforge.pmd.cpd.token; + +import org.antlr.v4.runtime.Lexer; +import org.antlr.v4.runtime.Token; + +import net.sourceforge.pmd.lang.ast.GenericToken; + +/** + * Generic Antlr representation of a token. + */ +public class AntlrToken implements GenericToken { + + private final Token token; + private final AntlrToken previousComment; + + /** + * Constructor + * + * @param token The antlr token implementation + * @param previousComment The previous comment + */ + public AntlrToken(final Token token, final AntlrToken previousComment) { + this.token = token; + this.previousComment = previousComment; + } + + @Override + public GenericToken getNext() { + // Antlr implementation does not require this + return null; + } + + @Override + public GenericToken getPreviousComment() { + return previousComment; + } + + @Override + public String getImage() { + return token.getText(); + } + + @Override + public int getBeginLine() { + return token.getLine(); + } + + @Override + public int getEndLine() { + return token.getLine(); + } + + @Override + public int getBeginColumn() { + return token.getCharPositionInLine(); + } + + @Override + public int getEndColumn() { + return token.getCharPositionInLine() + token.getStopIndex() - token.getStartIndex(); + } + + public int getType() { + return token.getType(); + } + + public boolean isHidden() { + return token.getChannel() == Lexer.HIDDEN; + } +} diff --git a/pmd-go/src/main/java/net/sourceforge/pmd/lang/go/GoLanguageModule.java b/pmd-go/src/main/java/net/sourceforge/pmd/lang/go/GoLanguageModule.java index 21752d4fd5..9c35be150d 100644 --- a/pmd-go/src/main/java/net/sourceforge/pmd/lang/go/GoLanguageModule.java +++ b/pmd-go/src/main/java/net/sourceforge/pmd/lang/go/GoLanguageModule.java @@ -17,10 +17,10 @@ public class GoLanguageModule extends BaseLanguageModule { public static final String TERSE_NAME = "go"; /** - * Create a new instance of Swift Language Module. + * Create a new instance of Golang Language Module. */ public GoLanguageModule() { super(NAME, null, TERSE_NAME, null, "go"); - addVersion("", null, true); + addVersion("1", null, true); } }