• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Kotlin你不知道的秘密二,Github标星25K+火的Android项目

武飞扬头像
m0_64319455
帮助1

KotlinParsing ktParsing = KotlinParsing.createForTopLevel(new SemanticWhitespaceAwarePsiBuilderImpl(psiBuilder));
String extension = FileUtilRt.getExtension(psiFile.getName());
if (extension.isEmpty() || extension.equals(KotlinFileType.EXTENSION) || (psiFile instanceof KtFile && ((KtFile) psiFile).isCompiled())) {
ktParsing.parseFile();
} else {
ktParsing.parseScript();
}
return psiBuilder.getTreeBuilt();
}
}

可以看到Kotlin的语法分析是通过KotlinParsing进行的,在parse方法中创建KotlinParsing然后把要分析的文件传递过去,这里的文件也就是我们熟悉的以 .kt结尾的文件。当然也不局限于kt文件。接着我们跟进下ktParsing.parseFile();

public class KotlinParsing extends AbstractKotlinParsing {
void parseFile() {
PsiBuilder.Marker fileMarker = mark();
//分析类的注释、package、import*
parsePreamble();
while (!eof()) {
//分析包、类、方法的声明方法,例如:package、class、function
parseTopLe

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgccakf
系列文章
更多 icon
同类精品
更多 icon
继续加载