package jetbrains.mps.lang.findUsages.structure;

/*Generated by MPS */

import jetbrains.mps.lang.smodel.LanguageConceptIndex;
import jetbrains.mps.lang.smodel.LanguageConceptIndexBuilder;
import jetbrains.mps.smodel.adapter.ids.SConceptId;
import org.jetbrains.mps.openapi.language.SAbstractConcept;

public final class LanguageConceptSwitch {
  private final LanguageConceptIndex myIndex;
  public static final int AbstractFinderDeclaration = 0;
  public static final int CategorizeBlock = 1;
  public static final int CheckCancelledStatusStatement = 2;
  public static final int ConceptFunctionParameter_node = 3;
  public static final int ExecuteFinderExpression = 4;
  public static final int ExecuteFindersGetSearchResults = 5;
  public static final int FindBlock = 6;
  public static final int FinderDeclaration = 7;
  public static final int FinderReference = 8;
  public static final int FinderReferenceExpression = 9;
  public static final int ForEachNodeFoundClosureParameterDeclaration = 10;
  public static final int IsApplicableBlock = 11;
  public static final int IsUsedByDefault = 12;
  public static final int IsVisibleBlock = 13;
  public static final int MakeResultProvider = 14;
  public static final int NodeStatement = 15;
  public static final int OnEachFoundNodeCallback = 16;
  public static final int OnEachNodeFoundByExpression = 17;
  public static final int ResultStatement = 18;
  public static final int ResultStatement2 = 19;
  public static final int SearchedNodesBlock = 20;

  public LanguageConceptSwitch() {
    LanguageConceptIndexBuilder builder = new LanguageConceptIndexBuilder(0x64d34fcdad024e73L, 0xaff8a581124c2e30L);
    builder.put(0x11bd0c17f12L, AbstractFinderDeclaration);
    builder.put(0x118e6b14c36L, CategorizeBlock);
    builder.put(0x1190f427b83L, CheckCancelledStatusStatement);
    builder.put(0x116c9c51f82L, ConceptFunctionParameter_node);
    builder.put(0x118d6fce801L, ExecuteFinderExpression);
    builder.put(0x1bd5a514384e1959L, ExecuteFindersGetSearchResults);
    builder.put(0x116b5695a88L, FindBlock);
    builder.put(0x116b5695a8dL, FinderDeclaration);
    builder.put(0x1bd5a514384e195fL, FinderReference);
    builder.put(0x5e9f5a0f21d59aacL, FinderReferenceExpression);
    builder.put(0x112b337a16d39f72L, ForEachNodeFoundClosureParameterDeclaration);
    builder.put(0x116b5695a94L, IsApplicableBlock);
    builder.put(0x1660f4e85a04a8fL, IsUsedByDefault);
    builder.put(0x11b36e60151L, IsVisibleBlock);
    builder.put(0x585a05e7f40a28d1L, MakeResultProvider);
    builder.put(0x1177408145aL, NodeStatement);
    builder.put(0x112b337a16caa96eL, OnEachFoundNodeCallback);
    builder.put(0x5f5488291166ada7L, OnEachNodeFoundByExpression);
    builder.put(0x1177404a3f4L, ResultStatement);
    builder.put(0x7c5c2a0242864b93L, ResultStatement2);
    builder.put(0x118e6b5cc19L, SearchedNodesBlock);
    myIndex = builder.seal();
  }

  /*package*/ int index(SConceptId cid) {
    return myIndex.index(cid);
  }

  public int index(SAbstractConcept concept) {
    return myIndex.index(concept);
  }
}
