summaryrefslogtreecommitdiff
path: root/java/java-psi-impl/src/com/intellij/psi/impl/source/tree/java/PsiCommaSeparatedListImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/java-psi-impl/src/com/intellij/psi/impl/source/tree/java/PsiCommaSeparatedListImpl.java')
-rw-r--r--java/java-psi-impl/src/com/intellij/psi/impl/source/tree/java/PsiCommaSeparatedListImpl.java85
1 files changed, 0 insertions, 85 deletions
diff --git a/java/java-psi-impl/src/com/intellij/psi/impl/source/tree/java/PsiCommaSeparatedListImpl.java b/java/java-psi-impl/src/com/intellij/psi/impl/source/tree/java/PsiCommaSeparatedListImpl.java
deleted file mode 100644
index 475542fdc868..000000000000
--- a/java/java-psi-impl/src/com/intellij/psi/impl/source/tree/java/PsiCommaSeparatedListImpl.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright 2000-2009 JetBrains s.r.o.
- *
- * Licensed 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 com.intellij.psi.impl.source.tree.java;
-
-import com.intellij.lang.ASTNode;
-import com.intellij.psi.impl.PsiImplUtil;
-import com.intellij.psi.impl.source.Constants;
-import com.intellij.psi.impl.source.tree.*;
-import com.intellij.psi.tree.IElementType;
-import com.intellij.psi.tree.TokenSet;
-import com.intellij.util.CharTable;
-import org.jetbrains.annotations.NotNull;
-
-/**
- * Adds or removes comma
- *
- * @author ven
- */
-public abstract class PsiCommaSeparatedListImpl extends CompositePsiElement implements Constants {
- private final TokenSet myTypesOfElements;
-
- protected PsiCommaSeparatedListImpl(IElementType type, final TokenSet typeOfElements) {
- super(type);
- myTypesOfElements = typeOfElements;
- }
-
- @Override
- public TreeElement addInternal(TreeElement first, ASTNode last, ASTNode anchor, Boolean before) {
- if (myTypesOfElements.contains(first.getElementType()) && myTypesOfElements.contains(last.getElementType())) {
- final CharTable treeCharTab = SharedImplUtil.findCharTableByTree(this);
- final TreeElement firstAdded = super.addInternal(first, last, anchor, before);
- for (ASTNode child = ((ASTNode)first).getTreeNext(); child != null; child = child.getTreeNext()) {
- if (child.getElementType() == COMMA) break;
- if (myTypesOfElements.contains(child.getElementType())) {
- TreeElement comma = Factory.createSingleLeafElement(COMMA, ",", 0, 1, treeCharTab, getManager());
- super.addInternal(comma, comma, first, Boolean.FALSE);
- break;
- }
- }
-
- for (ASTNode child = ((ASTNode)first).getTreePrev(); child != null; child = child.getTreePrev()) {
- if (child.getElementType() == COMMA) break;
- if (myTypesOfElements.contains(child.getElementType())) {
- TreeElement comma = Factory.createSingleLeafElement(COMMA, ",", 0, 1, treeCharTab, getManager());
- super.addInternal(comma, comma, child, Boolean.FALSE);
- break;
- }
- }
- return firstAdded;
- }
-
- return super.addInternal(first, last, anchor, before);
- }
-
- @Override
- public void deleteChildInternal(@NotNull ASTNode child) {
- if (myTypesOfElements.contains(child.getElementType())) {
- ASTNode next = PsiImplUtil.skipWhitespaceAndComments(child.getTreeNext());
- if (next != null && next.getElementType() == COMMA) {
- deleteChildInternal(next);
- }
- else {
- ASTNode prev = PsiImplUtil.skipWhitespaceAndCommentsBack(child.getTreePrev());
- if (prev != null && prev.getElementType() == COMMA) {
- deleteChildInternal(prev);
- }
- }
- }
- super.deleteChildInternal(child);
- }
-}