當前位置: 首頁>>代碼示例>>Java>>正文


Java GenericElementSignatureProvider類代碼示例

本文整理匯總了Java中com.intellij.codeInsight.folding.impl.GenericElementSignatureProvider的典型用法代碼示例。如果您正苦於以下問題:Java GenericElementSignatureProvider類的具體用法?Java GenericElementSignatureProvider怎麽用?Java GenericElementSignatureProvider使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


GenericElementSignatureProvider類屬於com.intellij.codeInsight.folding.impl包,在下文中一共展示了GenericElementSignatureProvider類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: serializeMe

import com.intellij.codeInsight.folding.impl.GenericElementSignatureProvider; //導入依賴的package包/類
@Override
public void serializeMe(UsageInfo info, StringBuilder os) throws IOException {
  //final SmartPsiElementPointer<?> pointer = info.getSmartPointer();
  final GenericElementSignatureProvider provider = new GenericElementSignatureProvider();
  final String signature = provider.getSignature(info.getElement());
  append(os, info.getFile().getVirtualFile().getPath());
  os.append(separator);
  append(os, signature);
  os.append(separator);
  final ProperTextRange rangeInElement = info.getRangeInElement();
  if (rangeInElement == null) {
    append(os, "-1");
    os.append(separator);
    append(os, "-1");
    os.append(separator);
  }
  else {
    append(os, String.valueOf(rangeInElement.getStartOffset()));
    os.append(separator);
    append(os, String.valueOf(rangeInElement.getEndOffset()));
    os.append(separator);
  }
  append(os, String.valueOf(info.isNonCodeUsage()));
  os.append(separator);
  append(os, String.valueOf(info.isDynamicUsage()));
  os.append(separator);
  final String text = new UsageInfo2UsageAdapter(info).getPlainText();
  append(os, text);
  os.append(separator);
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:31,代碼來源:UsageSerializable.java

示例2: execute

import com.intellij.codeInsight.folding.impl.GenericElementSignatureProvider; //導入依賴的package包/類
public UsageInfo execute(final Project project) {
  final GenericElementSignatureProvider provider = new GenericElementSignatureProvider();

  final String path = readNext(false);
  if (path == null) return null;
  final VirtualFile file = LocalFileSystem.getInstance().findFileByIoFile(new File(path));
  if (file == null) return null;
  PsiFile psiFile = PsiManager.getInstance(project).findFile(file);
  if (psiFile == null) return null;
  final String signature = readNext(false);
  final PsiElement element = provider.restoreBySignature(psiFile, signature, new StringBuilder());
  if (element == null) return null;
  final String startStr = readNext(false);
  if (startStr == null) return null;
  final int start = Integer.parseInt(startStr);
  final String endStr = readNext(false);
  if (endStr == null) return null;
  final int end = Integer.parseInt(endStr);
  final String nonCodeUsageStr = readNext(false);
  if (nonCodeUsageStr == null) return null;
  final boolean nonCodeUsage = Boolean.parseBoolean(nonCodeUsageStr);
  final String dynamicUsageStr = readNext(false);
  if (dynamicUsageStr == null) return null;
  final boolean dynamicUsage = Boolean.parseBoolean(dynamicUsageStr);

  final String text = readNext(true);
  if (text == null) return null;

  final UsageInfo info = new UsageInfo(element, start, end, nonCodeUsage);
  info.setDynamicUsage(dynamicUsage);

  return info;
  /*final String newText = new UsageInfo2UsageAdapter(info).getPlainText();
  if (! Comparing.equal(newText, text)) {
    LOG.info("Usage not restored, oldText:\n'" + text + "'\nnew text: '\n" + newText + "'");
    return null;
  }*/
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:39,代碼來源:UsageSerializable.java

示例3: serializeMe

import com.intellij.codeInsight.folding.impl.GenericElementSignatureProvider; //導入依賴的package包/類
@Override
public void serializeMe(UsageInfo info, StringBuilder os) throws IOException {
  //final SmartPsiElementPointer<?> pointer = info.getSmartPointer();
  final GenericElementSignatureProvider provider = new GenericElementSignatureProvider();
  final String signature = provider.getSignature(info.getElement());
  append(os, info.getElement().getContainingFile().getVirtualFile().getPath());
  os.append(separator);
  append(os, signature);
  os.append(separator);
  final ProperTextRange rangeInElement = info.getRangeInElement();
  if (rangeInElement == null) {
    append(os, "-1");
    os.append(separator);
    append(os, "-1");
    os.append(separator);
  }
  else {
    append(os, String.valueOf(rangeInElement.getStartOffset()));
    os.append(separator);
    append(os, String.valueOf(rangeInElement.getEndOffset()));
    os.append(separator);
  }
  append(os, String.valueOf(info.isNonCodeUsage()));
  os.append(separator);
  append(os, String.valueOf(info.isDynamicUsage()));
  os.append(separator);
  final String text = new UsageInfo2UsageAdapter(info).getPlainText();
  append(os, text);
  os.append(separator);
}
 
開發者ID:consulo,項目名稱:consulo,代碼行數:31,代碼來源:UsageSerializable.java


注:本文中的com.intellij.codeInsight.folding.impl.GenericElementSignatureProvider類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。