Intereting Posts

как разбирать котлинский код?

Мне нужно проанализировать код файлов kotlin, чтобы определить ключевые слова «данные» и «?».

Проблема в том, что я не нахожу никаких библиотек, таких как JavaParser. Мне не нужны мощные инструменты, просто что-то, кто возвращает мне количество строк.

Есть идеи?

    Вам нужно будет либо найти парсер Kotlin, либо написать свой собственный.

    Для этого подмножества синтаксического анализа вы можете обманывать, поскольку data являются ключевым словом, поэтому, если вы видите данные с буквами с каждой стороны, вы знаете, что это ключевое слово.

    Для ? , это зависит от того, какой смысл вы хотите, elvis может быть обнаружен точкой else, попробуйте значение с нулевым значением, если ? рядом с письмом.

    Я использую antlr4 для этого. И я создаю библиотеку с открытым исходным кодом: https://github.com/sarahBuisson/kotlin-parser

     <dependency <groupId>com.github.sarahbuisson</groupId> <artifactId>kotlin-parser</artifactId> </dependency> 

    См. Это [0] обсуждение котирования кода Котлина. Они говорят об использовании грамматики antlr v4 для анализа кода Котлина.

    [0] https://discuss.kotlinlang.org/t/kotlin-parser/1728