diff --git a/platform/platform-api/src/com/intellij/lexer/LookAheadLexer.java b/platform/platform-api/src/com/intellij/lexer/LookAheadLexer.java index 87bb7e0c9d9c..4c70406b5941 100644 --- a/platform/platform-api/src/com/intellij/lexer/LookAheadLexer.java +++ b/platform/platform-api/src/com/intellij/lexer/LookAheadLexer.java @@ -17,7 +17,8 @@ package com.intellij.lexer; import com.intellij.psi.tree.IElementType; import com.intellij.util.containers.ImmutableUserMap; -import com.intellij.util.containers.Queue; + +import java.util.LinkedList; /** * @author peter @@ -28,8 +29,8 @@ public abstract class LookAheadLexer extends LexerBase{ private final Lexer myBaseLexer; private int myTokenStart; - private final Queue myTypeCache = new Queue(50); - private final Queue myEndOffsetCache = new Queue(50); + private final LinkedList myTypeCache = new LinkedList(); + private final LinkedList myEndOffsetCache = new LinkedList(); public LookAheadLexer(final Lexer baseLexer) { myBaseLexer = baseLexer; @@ -40,8 +41,8 @@ public abstract class LookAheadLexer extends LexerBase{ } protected void addToken(int endOffset, IElementType type) { - myTypeCache.addLast(type); - myEndOffsetCache.addLast(endOffset); + myTypeCache.add(type); + myEndOffsetCache.add(endOffset); } protected void lookAhead(Lexer baseLexer) { @@ -50,8 +51,8 @@ public abstract class LookAheadLexer extends LexerBase{ public void advance() { if (!myTypeCache.isEmpty()) { - myTypeCache.pullFirst(); - myTokenStart = myEndOffsetCache.pullFirst(); + myTypeCache.removeFirst(); + myTokenStart = myEndOffsetCache.removeFirst(); } if (myTypeCache.isEmpty()) { doLookAhead(); @@ -80,8 +81,8 @@ public abstract class LookAheadLexer extends LexerBase{ protected void resetCacheSize(int size) { while (myTypeCache.size() > size) { - myTypeCache.pullFirst(); - myEndOffsetCache.pullFirst(); + myTypeCache.removeLast(); + myEndOffsetCache.removeLast(); } } @@ -91,7 +92,7 @@ public abstract class LookAheadLexer extends LexerBase{ } public int getTokenEnd() { - return myEndOffsetCache.peekFirst(); + return myEndOffsetCache.getFirst(); } public int getTokenStart() { @@ -114,7 +115,7 @@ public abstract class LookAheadLexer extends LexerBase{ } public IElementType getTokenType() { - return myTypeCache.peekFirst(); + return myTypeCache.getFirst(); } @Override