You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by lk...@apache.org on 2023/01/09 07:22:32 UTC

[netbeans] branch master updated: Move ANTLR Lexers to lexer.antlr4

This is an automated email from the ASF dual-hosted git repository.

lkishalmi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/netbeans.git


The following commit(s) were added to refs/heads/master by this push:
     new 6f472b51ca Move ANTLR Lexers to lexer.antlr4
6f472b51ca is described below

commit 6f472b51caa5ae24ddcb63c4ca5965c3404253dd
Author: Laszlo Kishalmi <la...@gmail.com>
AuthorDate: Sun Jan 8 19:26:52 2023 -0800

    Move ANTLR Lexers to lexer.antlr4
---
 java/languages.antlr/nbproject/project.xml         |  22 +--
 .../languages/antlr/AbstractAntlrLexer.java        |  82 ----------
 .../languages/antlr/AntlrTokenSequence.java        | 172 ---------------------
 .../languages/antlr/LexerInputCharStream.java      | 134 ----------------
 .../modules/languages/antlr/v3/Antlr3Lexer.java    |  40 ++---
 .../antlr/v4/Antlr4CompletionProvider.java         |   3 +-
 .../modules/languages/antlr/v4/Antlr4Lexer.java    |  40 ++---
 .../languages/antlr/v4/Antlr4ParserResult.java     |   3 +
 .../languages/antlr/AntlrTokenSequenceTest.java    | 162 -------------------
 9 files changed, 35 insertions(+), 623 deletions(-)

diff --git a/java/languages.antlr/nbproject/project.xml b/java/languages.antlr/nbproject/project.xml
index 73729c3315..05c1ef1db2 100644
--- a/java/languages.antlr/nbproject/project.xml
+++ b/java/languages.antlr/nbproject/project.xml
@@ -141,6 +141,14 @@
                         <specification-version>1.80</specification-version>
                     </run-dependency>
                 </dependency>
+                <dependency>
+                    <code-name-base>org.netbeans.modules.lexer.antlr4</code-name-base>
+                    <build-prerequisite/>
+                    <compile-dependency/>
+                    <run-dependency>
+                        <specification-version>1.0</specification-version>
+                    </run-dependency>
+                </dependency>
                 <dependency>
                     <code-name-base>org.netbeans.modules.parsing.api</code-name-base>
                     <build-prerequisite/>
@@ -231,20 +239,6 @@
                     </run-dependency>
                 </dependency>
             </module-dependencies>
-            <test-dependencies>
-                <test-type>
-                    <name>unit</name>
-                    <test-dependency>
-                        <code-name-base>org.netbeans.libs.junit4</code-name-base>
-                        <compile-dependency/>
-                    </test-dependency>
-                    <test-dependency>
-                        <code-name-base>org.netbeans.modules.nbjunit</code-name-base>
-                        <recursive/>
-                        <compile-dependency/>
-                    </test-dependency>
-                </test-type>
-            </test-dependencies>
             <public-packages/>
         </data>
     </configuration>
diff --git a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/AbstractAntlrLexer.java b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/AbstractAntlrLexer.java
deleted file mode 100644
index 9f76582b2e..0000000000
--- a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/AbstractAntlrLexer.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.netbeans.modules.languages.antlr;
-
-import org.antlr.v4.runtime.misc.IntegerList;
-import org.netbeans.api.lexer.Token;
-import org.netbeans.spi.lexer.Lexer;
-import org.netbeans.spi.lexer.LexerRestartInfo;
-import org.netbeans.spi.lexer.TokenFactory;
-
-
-/**
- *
- * @author lkishalmi
- */
-public abstract class AbstractAntlrLexer<T extends org.antlr.v4.runtime.Lexer> implements Lexer<AntlrTokenId> {
-
-    private final TokenFactory<AntlrTokenId> tokenFactory;
-    protected final T lexer;
-    private final LexerInputCharStream input;
-
-    public AbstractAntlrLexer(LexerRestartInfo<AntlrTokenId> info, T lexer) {
-        this.tokenFactory = info.tokenFactory();
-        this.lexer = lexer;
-        this.input = (LexerInputCharStream) lexer.getInputStream();
-        if (info.state() != null) {
-            ((LexerState) info.state()).restore(lexer);
-        }
-        input.markToken();
-    }
-
-
-    @Override
-    public void release() {
-    }
-
-    protected final Token<AntlrTokenId> token(AntlrTokenId id) {
-        input.markToken();
-        return tokenFactory.createToken(id);
-    }
-
-    public static class LexerState<T extends org.antlr.v4.runtime.Lexer> {
-        final int state;
-        final int mode;
-        final IntegerList modes;
-
-        public LexerState(T lexer) {
-            this.state= lexer.getState();
-
-            this.mode = lexer._mode;
-            this.modes = new IntegerList(lexer._modeStack);
-        }
-
-        public void restore(T lexer) {
-            lexer.setState(state);
-            lexer._modeStack.addAll(modes);
-            lexer._mode = mode;
-        }
-
-        @Override
-        public String toString() {
-            return String.valueOf(state);
-        }
-
-    }
-}
diff --git a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/AntlrTokenSequence.java b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/AntlrTokenSequence.java
deleted file mode 100644
index 60db9b31f3..0000000000
--- a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/AntlrTokenSequence.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.netbeans.modules.languages.antlr;
-
-import java.util.ArrayList;
-import java.util.ListIterator;
-import java.util.Optional;
-import java.util.function.Predicate;
-import org.antlr.v4.runtime.Lexer;
-import static org.antlr.v4.runtime.Recognizer.EOF;
-import org.antlr.v4.runtime.Token;
-import org.antlr.v4.runtime.TokenSource;
-
-/**
- *
- * @author lkishalmi
- */
-public final class AntlrTokenSequence {
-
-    private final TokenSource tokens;
-    private boolean eofRead = false;
-    private int readIndex;
-    private int cursorOffset;
-    private ListIterator<Token> cursor;
-    
-    private final ArrayList<Token> tokenList = new ArrayList<>(200);
-
-    public static final Predicate<Token> DEFAULT_CHANNEL = new ChannelFilter(Lexer.DEFAULT_TOKEN_CHANNEL);
-    
-    public static final class ChannelFilter implements Predicate<Token> {
-        private final int channel;
-
-        public ChannelFilter(int channel) {
-            this.channel = channel;
-        }
-
-        @Override
-        public boolean test(Token t) {
-            return channel == t.getChannel();
-        }
-    }
-    
-    public AntlrTokenSequence(TokenSource tokens) {
-        this.tokens = tokens;
-        this.cursor = tokenList.listIterator();
-    }
-    
-    public void seekTo(int offset) {
-        if (offset > readIndex) {
-            if (cursor.hasNext()) {
-                //replace the cursor if it is not at the end of the list.
-                cursor = tokenList.listIterator(tokenList.size());
-            }
-            Token t = read();
-            while ((t != null) && (t.getStopIndex() + 1 < offset)) {
-                t = read();
-            }
-            if (t != null && (offset < t.getStopIndex() + 1)) {
-                cursor.previous();
-                cursorOffset = t.getStartIndex();
-            } else {
-                cursorOffset = readIndex;
-            }
-        } else {
-            if (offset > getOffset()) {
-                next((t) -> t.getStopIndex() > offset);
-                if (cursor.hasPrevious()) {
-                    cursor.previous();
-                }
-                
-            } else {
-                previous((t) -> t.getStartIndex() < offset);
-            }
-        }
-        
-    }
-    
-    public boolean isEmpty() {
-        return tokenList.isEmpty() && !hasNext();
-    }
-    
-    public boolean hasNext() {
-        if (!eofRead && (cursorOffset == readIndex) && !cursor.hasNext()) {
-            Token t = read();
-            if (t != null) {
-                cursor.previous();
-            }
-        }
-        return !(eofRead && !cursor.hasNext());
-    }
-    
-    public boolean hasPrevious() {
-        return cursor.hasPrevious();
-    }
-    
-    public int getOffset() {
-        return cursorOffset;
-    }
-    
-    public Optional<Token> previous() {
-        Optional<Token> ret = cursor.hasPrevious() ? Optional.of(cursor.previous()) : Optional.empty();
-        cursorOffset = cursor.hasPrevious() ? ret.get().getStartIndex() : 0;
-        return ret;
-        
-    }
-    
-    public Optional<Token> previous(Predicate<Token> filter) {
-        Optional<Token> ot = previous();
-        while (ot.isPresent() && !filter.test(ot.get())) {
-            ot = previous();
-        }
-        return ot;
-    }
-    
-    public Optional<Token> previous(int tokenType){
-        return previous((Token t) -> t.getType() == tokenType);
-    }
-    
-    public Optional<Token> next() {
-        if (hasNext()) {
-            Token t = cursor.next();
-            cursorOffset = t.getStopIndex() + 1;
-            return Optional.of(t);
-        } else {
-            return Optional.empty();
-        }
-    }
-    
-    public Optional<Token> next(Predicate<Token> filter) {
-        Optional<Token> ot = next();
-        while (ot.isPresent() && !filter.test(ot.get())) {
-            ot = next();
-        }
-        return ot;
-    }
-    
-    public Optional<Token> next(int tokenType){
-        return next((Token t) -> t.getType() == tokenType);
-    }
-
-    private Token read() {
-        if (eofRead) {
-            return null;
-        }
-        Token t = tokens.nextToken();
-        if (t.getType() != EOF) {
-            cursor.add(t);
-            readIndex = t.getStopIndex() + 1;
-            return t;
-        } else {
-            eofRead = true;
-            return null;
-        }
-    }
-    
-}
diff --git a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/LexerInputCharStream.java b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/LexerInputCharStream.java
deleted file mode 100644
index e2892462e6..0000000000
--- a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/LexerInputCharStream.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.netbeans.modules.languages.antlr;
-
-import org.antlr.v4.runtime.CharStream;
-import org.antlr.v4.runtime.misc.Interval;
-import org.netbeans.spi.lexer.*;
-
-/**
- *
- * @author lkishalmi
- */
-public class LexerInputCharStream implements CharStream {
-    private final LexerInput input;
-
-    private int tokenMark = Integer.MAX_VALUE;
-    private int index = 0;
-
-    public LexerInputCharStream(LexerInput input) {
-        this.input = input;
-    }
-
-    @Override
-    public String getText(Interval intrvl) {
-        if (intrvl.a < tokenMark) {
-            throw new UnsupportedOperationException("Can't read before the last token end: " + tokenMark);
-        }
-        int start = intrvl.a - tokenMark;
-        int end = intrvl.b - tokenMark + 1;
-        int toread = end - start - input.readLength();
-        for (int i = 0; i < toread; i++) {
-            input.read();
-        }
-        String ret = String.valueOf(input.readText(start, end));
-        if (toread > 0) {
-            input.backup(toread);
-        }
-        return ret;
-    }
-
-    @Override
-    public void consume() {
-        read();
-    }
-
-    @Override
-    public int LA(int count) {
-        if (count == 0) {
-            return 0; //the behaviour is not defined
-        }
-
-        int c = 0;
-        if (count > 0) {
-            for (int i = 0; i < count; i++) {
-                c = read();
-            }
-            backup(count);
-        } else {
-            backup(count);
-            c = read();
-        }
-        return c;
-    }
-
-    //Marks are for buffering in ANTLR4, we do not really need them
-    @Override
-    public int mark() {
-        return -1;
-    }
-
-    public void markToken() {
-        tokenMark = index;
-    }
-
-    @Override
-    public void release(int marker) {
-    }
-
-    @Override
-    public int index() {
-        return index;
-    }
-
-    @Override
-    public void seek(int i) {
-        if (i < index()) {
-            backup(index() - i);
-        } else {
-            while (index() < i) {
-                if (read() == LexerInput.EOF) {
-                    break;
-                }
-            }
-        }
-    }
-
-
-    private int read() {
-        int ret = input.read();
-        index += 1;
-        return ret;
-    }
-
-    private void backup(int count) {
-        index -= count;
-        input.backup(count);
-    }
-
-    @Override
-    public int size() {
-        throw new UnsupportedOperationException("Stream size is unknown.");
-    }
-
-    @Override
-    public String getSourceName() {
-        return UNKNOWN_SOURCE_NAME;
-    }
-}
diff --git a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v3/Antlr3Lexer.java b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v3/Antlr3Lexer.java
index 34f43875db..5238858e17 100644
--- a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v3/Antlr3Lexer.java
+++ b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v3/Antlr3Lexer.java
@@ -23,38 +23,30 @@ import org.netbeans.api.lexer.Token;
 import org.netbeans.spi.lexer.LexerRestartInfo;
 
 import static org.antlr.parser.antlr3.ANTLRv3Lexer.*;
-import org.netbeans.modules.languages.antlr.AbstractAntlrLexer;
 import org.netbeans.modules.languages.antlr.AntlrTokenId;
 import static org.netbeans.modules.languages.antlr.AntlrTokenId.*;
-import org.netbeans.modules.languages.antlr.LexerInputCharStream;
+import org.netbeans.spi.lexer.antlr4.AbstractAntlrLexerBridge;
+import org.netbeans.spi.lexer.antlr4.LexerInputCharStream;
 
 /**
  *
  * @author lkishalmi
  */
-public final class Antlr3Lexer extends AbstractAntlrLexer<ANTLRv3Lexer> {
+public final class Antlr3Lexer extends AbstractAntlrLexerBridge<ANTLRv3Lexer, AntlrTokenId> {
 
 
     public Antlr3Lexer(LexerRestartInfo<AntlrTokenId> info) {
         super(info, new ANTLRv3Lexer(new LexerInputCharStream(info.input())));
     }
 
-    private org.antlr.v4.runtime.Token preFetchedToken = null;
+    @Override
+    public Object state() {
+        return new State(lexer);
+    }
 
     @Override
-    public Token<AntlrTokenId> nextToken() {
-        org.antlr.v4.runtime.Token nextToken;
-        if (preFetchedToken != null) {
-            nextToken = preFetchedToken;
-            lexer.getInputStream().seek(preFetchedToken.getStopIndex() + 1);
-            preFetchedToken = null;
-        } else {
-            nextToken = lexer.nextToken();
-        }
-        if (nextToken.getType() == EOF) {
-            return null;
-        }
-        switch (nextToken.getType()) {
+    protected Token<AntlrTokenId> mapToken(int antlrTokenType) {
+        switch (antlrTokenType) {
             case TOKEN_REF:
                 return token(AntlrTokenId.TOKEN);
             case RULE_REF:
@@ -130,24 +122,14 @@ public final class Antlr3Lexer extends AbstractAntlrLexer<ANTLRv3Lexer> {
                 return token(WHITESPACE);
 
             case ACTION_CONTENT:
-                preFetchedToken = lexer.nextToken();
-                while (preFetchedToken.getType() == ACTION_CONTENT) {
-                    preFetchedToken = lexer.nextToken();
-                }
-                lexer.getInputStream().seek(preFetchedToken.getStartIndex());
-                return token(ACTION);
+                return groupToken(ACTION, ACTION_CONTENT);
 
             default:
                 return token(ERROR);
         }
     }
 
-    @Override
-    public Object state() {
-        return new State(lexer);
-    }
-
-    public static class State extends AbstractAntlrLexer.LexerState<ANTLRv3Lexer> {
+    private static class State extends AbstractAntlrLexerBridge.LexerState<ANTLRv3Lexer> {
         final int currentRuleType;
 
         public State(ANTLRv3Lexer lexer) {
diff --git a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4CompletionProvider.java b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4CompletionProvider.java
index 85fecab22e..ac82c13e84 100644
--- a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4CompletionProvider.java
+++ b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4CompletionProvider.java
@@ -50,7 +50,8 @@ import org.netbeans.api.annotations.common.StaticResource;
 
 import static org.antlr.parser.antlr4.ANTLRv4Lexer.*;
 import org.netbeans.modules.languages.antlr.AntlrParserResult.ReferenceType;
-import static org.netbeans.modules.languages.antlr.AntlrTokenSequence.DEFAULT_CHANNEL;
+import org.netbeans.spi.lexer.antlr4.AntlrTokenSequence;
+import static org.netbeans.spi.lexer.antlr4.AntlrTokenSequence.DEFAULT_CHANNEL;
 import org.openide.util.NbBundle;
 
 /**
diff --git a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4Lexer.java b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4Lexer.java
index 79efbc5cf5..e366210d4a 100644
--- a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4Lexer.java
+++ b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4Lexer.java
@@ -23,38 +23,30 @@ import org.netbeans.api.lexer.Token;
 import org.netbeans.spi.lexer.LexerRestartInfo;
 
 import static org.antlr.parser.antlr4.ANTLRv4Lexer.*;
-import org.netbeans.modules.languages.antlr.AbstractAntlrLexer;
 import org.netbeans.modules.languages.antlr.AntlrTokenId;
 import static org.netbeans.modules.languages.antlr.AntlrTokenId.*;
-import org.netbeans.modules.languages.antlr.LexerInputCharStream;
+import org.netbeans.spi.lexer.antlr4.AbstractAntlrLexerBridge;
+import org.netbeans.spi.lexer.antlr4.LexerInputCharStream;
 
 /**
  *
  * @author lkishalmi
  */
-public final class Antlr4Lexer extends AbstractAntlrLexer<ANTLRv4Lexer> {
+public final class Antlr4Lexer extends AbstractAntlrLexerBridge<ANTLRv4Lexer, AntlrTokenId> {
 
 
     public Antlr4Lexer(LexerRestartInfo<AntlrTokenId> info) {
         super(info, new ANTLRv4Lexer(new LexerInputCharStream(info.input())));
     }
 
-    private org.antlr.v4.runtime.Token preFetchedToken = null;
+    @Override
+    public Object state() {
+        return new State(lexer);
+    }
 
     @Override
-    public Token<AntlrTokenId> nextToken() {
-        org.antlr.v4.runtime.Token nextToken;
-        if (preFetchedToken != null) {
-            nextToken = preFetchedToken;
-            lexer.getInputStream().seek(preFetchedToken.getStopIndex() + 1);
-            preFetchedToken = null;
-        } else {
-            nextToken = lexer.nextToken();
-        }
-        if (nextToken.getType() == EOF) {
-            return null;
-        }
-        switch (nextToken.getType()) {
+    protected Token<AntlrTokenId> mapToken(int antlrTokenType) {
+        switch (antlrTokenType) {
             case TOKEN_REF:
                 return token(TOKEN);
             case RULE_REF:
@@ -125,24 +117,14 @@ public final class Antlr4Lexer extends AbstractAntlrLexer<ANTLRv4Lexer> {
                 return token(WHITESPACE);
 
             case ACTION_CONTENT:
-                preFetchedToken = lexer.nextToken();
-                while (preFetchedToken.getType() == ACTION_CONTENT) {
-                    preFetchedToken = lexer.nextToken();
-                }
-                lexer.getInputStream().seek(preFetchedToken.getStartIndex());
-                return token(ACTION);
+                return groupToken(ACTION, ACTION_CONTENT);
 
             default:
                 return token(ERROR);
         }
     }
 
-    @Override
-    public Object state() {
-        return new State(lexer);
-    }
-
-    public static class State extends AbstractAntlrLexer.LexerState<ANTLRv4Lexer> {
+    private static class State extends AbstractAntlrLexerBridge.LexerState<ANTLRv4Lexer> {
         final int currentRuleType;
 
         public State(ANTLRv4Lexer lexer) {
diff --git a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4ParserResult.java b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4ParserResult.java
index ace5b430e8..7c9683b9e4 100644
--- a/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4ParserResult.java
+++ b/java/languages.antlr/src/org/netbeans/modules/languages/antlr/v4/Antlr4ParserResult.java
@@ -58,11 +58,14 @@ public final class Antlr4ParserResult extends AntlrParserResult<ANTLRv4Parser> {
     private static final Logger LOG = Logger.getLogger(Antlr4ParserResult.class.getName());
 
     public static final Reference HIDDEN = new Reference(ReferenceType.CHANNEL, "HIDDEN", OffsetRange.NONE);
+    public static final Reference DEFAULT_MODE = new Reference(ReferenceType.MODE, "DEFAULT_MODE", OffsetRange.NONE);
+
     final Set<String> unknownReferences = new HashSet<>();
 
     public Antlr4ParserResult(Snapshot snapshot) {
         super(snapshot);
         references.put(HIDDEN.name, HIDDEN);
+        references.put(DEFAULT_MODE.name, DEFAULT_MODE);
     }
     
     @Override
diff --git a/java/languages.antlr/test/unit/src/org/netbeans/modules/languages/antlr/AntlrTokenSequenceTest.java b/java/languages.antlr/test/unit/src/org/netbeans/modules/languages/antlr/AntlrTokenSequenceTest.java
deleted file mode 100644
index 216a918201..0000000000
--- a/java/languages.antlr/test/unit/src/org/netbeans/modules/languages/antlr/AntlrTokenSequenceTest.java
+++ /dev/null
@@ -1,162 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.netbeans.modules.languages.antlr;
-
-import org.antlr.parser.antlr4.ANTLRv4Lexer;
-import org.antlr.v4.runtime.CharStreams;
-import org.junit.Test;
-
-import static org.junit.Assert.*;
-import static org.netbeans.modules.languages.antlr.AntlrTokenSequence.DEFAULT_CHANNEL;
-/**
- *
- * @author lkishalmi
- */
-public class AntlrTokenSequenceTest {
-    
-    public AntlrTokenSequenceTest() {
-    }
-    
-    /**
-     * Test of seekTo method, of class AntlrTokenSequence.
-     */
-    @Test
-    public void testSeekTo1() {
-        int offset = 0;
-        AntlrTokenSequence instance = sequence("");
-        instance.seekTo(offset);
-        assertTrue(instance.isEmpty());
-    }
-
-    @Test
-    public void testSeekTo2() {
-        int offset = 0;
-        AntlrTokenSequence instance = sequence("/**/");
-        instance.seekTo(offset);
-        assertFalse(instance.isEmpty());
-        assertTrue(instance.next().isPresent());
-    }
-
-    @Test
-    public void testSeekTo3() {
-        int offset = 4;
-        AntlrTokenSequence instance = sequence("/**/");
-        instance.seekTo(offset);
-        assertFalse(instance.isEmpty());
-        assertFalse(instance.next().isPresent());
-        assertTrue(instance.hasPrevious());
-    }
-
-    @Test
-    public void testSeekTo4() {
-        int offset = 5;
-        AntlrTokenSequence instance = sequence("/* */lexer");
-        instance.seekTo(offset);
-        assertFalse(instance.isEmpty());
-        assertTrue(instance.next().isPresent());
-        assertTrue(instance.hasPrevious());
-    }
-
-    @Test
-    public void testSeekTo5() {
-        AntlrTokenSequence instance = sequence("/* */lexer");
-        instance.seekTo(10);
-        assertFalse(instance.next().isPresent());
-        instance.seekTo(5);
-        assertFalse(instance.isEmpty());
-        assertTrue(instance.next().isPresent());
-        assertTrue(instance.previous().isPresent());
-        assertFalse(instance.hasPrevious());
-    }
-
-    /**
-     * Test of isEmpty method, of class AntlrTokenSequence.
-     */
-    @Test
-    public void testIsEmpty() {
-        AntlrTokenSequence instance = sequence("");
-        assertTrue(instance.isEmpty());
-    }
-
-    @Test
-    public void testHasNext1() {
-        AntlrTokenSequence instance = sequence("lexer");
-        assertTrue(instance.hasNext());
-    }
-
-    @Test
-    public void testHasNext2() {
-        AntlrTokenSequence instance = sequence("");
-        assertFalse(instance.hasNext());
-    }
-
-    @Test
-    public void testHasNext3() {
-        AntlrTokenSequence instance = sequence("lexer");
-        assertTrue(instance.hasNext());
-        instance.next();
-        assertFalse(instance.hasNext());
-    }
-
-    @Test
-    public void testHasPrevious1() {
-        AntlrTokenSequence instance = sequence("lexer");
-        instance.next();
-        assertTrue(instance.hasPrevious());
-    }
-
-    @Test
-    public void testHasPrevious2() {
-        AntlrTokenSequence instance = sequence("");
-        assertFalse(instance.hasPrevious());
-    }
-
-    @Test
-    public void testGetOffset1() {
-        AntlrTokenSequence instance = sequence("/* */lexer");
-        instance.seekTo(7);
-        assertTrue(instance.hasNext());
-        assertEquals(5, instance.getOffset());
-        instance.previous();
-        assertEquals(0, instance.getOffset());
-    }
-
-    @Test
-    public void testNextPredicate1() {
-        AntlrTokenSequence instance = sequence("/* */lexer grammar");
-        assertTrue(instance.hasNext());
-        instance.next(DEFAULT_CHANNEL).ifPresent((t) -> assertEquals("lexer", t.getText()));
-        instance.next(DEFAULT_CHANNEL).ifPresent((t) -> assertEquals("grammar", t.getText()));
-        assertFalse(instance.hasNext());        
-    }
-
-    @Test
-    public void testPreviousPredicate1() {
-        AntlrTokenSequence instance = sequence("/* */lexer grammar");
-        instance.seekTo(18);
-        assertFalse(instance.hasNext());
-        instance.previous(DEFAULT_CHANNEL).ifPresent((t) -> assertEquals("grammar", t.getText()));
-        instance.previous(DEFAULT_CHANNEL).ifPresent((t) -> assertEquals("lexer", t.getText()));
-        assertTrue(instance.hasPrevious());        
-    }
-
-    private AntlrTokenSequence sequence(String s) {
-        return new AntlrTokenSequence(new ANTLRv4Lexer(CharStreams.fromString(s)));
-    }
-}


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists