当前位置: 首页>>代码示例>>Java>>正文


Java MinusculeMatcher.matchingDegree方法代码示例

本文整理汇总了Java中com.intellij.psi.codeStyle.MinusculeMatcher.matchingDegree方法的典型用法代码示例。如果您正苦于以下问题:Java MinusculeMatcher.matchingDegree方法的具体用法?Java MinusculeMatcher.matchingDegree怎么用?Java MinusculeMatcher.matchingDegree使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.intellij.psi.codeStyle.MinusculeMatcher的用法示例。


在下文中一共展示了MinusculeMatcher.matchingDegree方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: matches

import com.intellij.psi.codeStyle.MinusculeMatcher; //导入方法依赖的package包/类
@Nullable
private static MatchResult matches(@NotNull ChooseByNameBase base,
                                   @NotNull String pattern,
                                   @NotNull MinusculeMatcher matcher,
                                   @Nullable String name) {
  if (name == null) {
    return null;
  }
  if (base.getModel() instanceof CustomMatcherModel) {
    try {
      return ((CustomMatcherModel)base.getModel()).matches(name, pattern) ? new MatchResult(name, 0, true) : null;
    }
    catch (Exception e) {
      LOG.info(e);
      return null; // no matches appears valid result for "bad" pattern
    }
  }
  FList<TextRange> fragments = matcher.matchingFragments(name);
  return fragments != null ? new MatchResult(name, matcher.matchingDegree(name, false, fragments), MinusculeMatcher.isStartMatch(fragments)) : null;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:21,代码来源:DefaultChooseByNameItemProvider.java

示例2: matches

import com.intellij.psi.codeStyle.MinusculeMatcher; //导入方法依赖的package包/类
@Nullable
private static MatchResult matches(@NotNull ChooseByNameBase base,
                                   @NotNull String pattern,
                                   @NotNull MinusculeMatcher matcher,
                                   @Nullable String name) {
  if (name == null) {
    return null;
  }
  if (base.getModel() instanceof CustomMatcherModel) {
    try {
      return ((CustomMatcherModel)base.getModel()).matches(name, pattern) ? new MatchResult(name, 0, true) : null;
    }
    catch (Exception e) {
      LOG.info(e);
      return null; // no matches appears valid result for "bad" pattern
    }
  }
  return matcher.matches(name) ? new MatchResult(name, matcher.matchingDegree(name), matcher.isStartMatch(name)) : null;
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:20,代码来源:DefaultChooseByNameItemProvider.java

示例3: matches

import com.intellij.psi.codeStyle.MinusculeMatcher; //导入方法依赖的package包/类
@Nullable
private static MatchResult matches(@Nonnull ChooseByNameBase base,
                                   @Nonnull String pattern,
                                   @Nonnull MinusculeMatcher matcher,
                                   @Nullable String name) {
  if (name == null) {
    return null;
  }
  if (base.getModel() instanceof CustomMatcherModel) {
    try {
      return ((CustomMatcherModel)base.getModel()).matches(name, pattern) ? new MatchResult(name, 0, true) : null;
    }
    catch (Exception e) {
      LOG.info(e);
      return null; // no matches appears valid result for "bad" pattern
    }
  }
  return matcher.matches(name) ? new MatchResult(name, matcher.matchingDegree(name), matcher.isStartMatch(name)) : null;
}
 
开发者ID:consulo,项目名称:consulo,代码行数:20,代码来源:DefaultChooseByNameItemProvider.java

示例4: findMember

import com.intellij.psi.codeStyle.MinusculeMatcher; //导入方法依赖的package包/类
@Nullable
private static Navigatable findMember(String pattern, PsiElement psiElement, VirtualFile file) {
  final PsiStructureViewFactory factory = LanguageStructureViewBuilder.INSTANCE.forLanguage(psiElement.getLanguage());
  final StructureViewBuilder builder = factory == null ? null : factory.getStructureViewBuilder(psiElement.getContainingFile());
  final FileEditor[] editors = FileEditorManager.getInstance(psiElement.getProject()).getEditors(file);
  if (builder == null || editors.length == 0) {
    return null;
  }

  final StructureView view = builder.createStructureView(editors[0], psiElement.getProject());
  try {
    final StructureViewTreeElement element = findElement(view.getTreeModel().getRoot(), psiElement, 4);
    if (element == null) {
      return null;
    }

    final MinusculeMatcher matcher = new MinusculeMatcher(pattern, NameUtil.MatchingCaseSensitivity.NONE);
    int max = Integer.MIN_VALUE;
    Object target = null;
    for (TreeElement treeElement : element.getChildren()) {
      if (treeElement instanceof StructureViewTreeElement) {
        String presentableText = treeElement.getPresentation().getPresentableText();
        if (presentableText != null) {
          final int degree = matcher.matchingDegree(presentableText);
          if (degree > max) {
            max = degree;
            target = ((StructureViewTreeElement)treeElement).getValue();
          }
        }
      }
    }
    return target instanceof Navigatable ? (Navigatable)target : null;
  }
  finally {
    Disposer.dispose(view);
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:38,代码来源:GotoClassAction.java

示例5: findMember

import com.intellij.psi.codeStyle.MinusculeMatcher; //导入方法依赖的package包/类
@Nullable private static Navigatable findMember(String pattern, PsiElement psiElement, VirtualFile file) {
  final PsiStructureViewFactory factory = LanguageStructureViewBuilder.INSTANCE.forLanguage(psiElement.getLanguage());
  final StructureViewBuilder builder = factory == null ? null : factory.getStructureViewBuilder(psiElement.getContainingFile());
  final FileEditor[] editors = FileEditorManager.getInstance(psiElement.getProject()).getEditors(file);
  if (builder == null || editors.length == 0) {
    return null;
  }

  final StructureView view = builder.createStructureView(editors[0], psiElement.getProject());
  try {
    final StructureViewTreeElement element = findElement(view.getTreeModel().getRoot(), psiElement, 4);
    if (element == null) {
      return null;
    }

    final MinusculeMatcher matcher = new MinusculeMatcher(pattern, NameUtil.MatchingCaseSensitivity.NONE);
    int max = Integer.MIN_VALUE;
    Object target = null;
    for (TreeElement treeElement : element.getChildren()) {
      if (treeElement instanceof StructureViewTreeElement) {
        final ItemPresentation presentation = treeElement.getPresentation();
        String presentableText = presentation == null ? null : presentation.getPresentableText();
        if (presentableText != null) {
          final int degree = matcher.matchingDegree(presentableText);
          if (degree > max) {
            max = degree;
            target = ((StructureViewTreeElement)treeElement).getValue();
          }
        }
      }
    }
    return target instanceof Navigatable ? (Navigatable)target : null;
  }
  finally {
    Disposer.dispose(view);
  }
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:38,代码来源:GotoClassAction.java

示例6: findMember

import com.intellij.psi.codeStyle.MinusculeMatcher; //导入方法依赖的package包/类
@Nullable
private static Navigatable findMember(String pattern, PsiElement psiElement, VirtualFile file) {
  final PsiStructureViewFactory factory = LanguageStructureViewBuilder.INSTANCE.forLanguage(psiElement.getLanguage());
  final StructureViewBuilder builder = factory == null ? null : factory.getStructureViewBuilder(psiElement.getContainingFile());
  final FileEditor[] editors = FileEditorManager.getInstance(psiElement.getProject()).getEditors(file);
  if (builder == null || editors.length == 0) {
    return null;
  }

  final StructureView view = builder.createStructureView(editors[0], psiElement.getProject());
  try {
    final StructureViewTreeElement element = findElement(view.getTreeModel().getRoot(), psiElement, 4);
    if (element == null) {
      return null;
    }
    final MinusculeMatcher matcher = NameUtil.buildMatcher(pattern).build();
    int max = Integer.MIN_VALUE;
    Object target = null;
    for (TreeElement treeElement : element.getChildren()) {
      if (treeElement instanceof StructureViewTreeElement) {
        String presentableText = treeElement.getPresentation().getPresentableText();
        if (presentableText != null) {
          final int degree = matcher.matchingDegree(presentableText);
          if (degree > max) {
            max = degree;
            target = ((StructureViewTreeElement)treeElement).getValue();
          }
        }
      }
    }
    return target instanceof Navigatable ? (Navigatable)target : null;
  }
  finally {
    Disposer.dispose(view);
  }
}
 
开发者ID:consulo,项目名称:consulo,代码行数:37,代码来源:GotoClassAction.java


注:本文中的com.intellij.psi.codeStyle.MinusculeMatcher.matchingDegree方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。