##Kotlin parser
This is a sample of a kotlin code parser lib !
how to use:
To use it, build in local then add to your pom.xml the dependencies
  <dependency>
            <groupId>com.github.sarahbuisson</groupId>
            <artifactId>kotlin-parser</artifactId>
            <version>1.0-SNAPSHOT</version>
  </dependency>
 
create a listener ( a class who well react each time a statement of the kotlin file is parsed, IE:)
class ClassCounterListener extends KotlinParserBaseListener {
    int numberOfClassModifier;
    int numberOfDataClass;
    int numberOfClass;
    @Override
    public void enterClassModifier(KotlinParser.ClassModifierContext ctx) {
        numberOfClassModifier++;
        if (ctx.DATA() != null) {
            numberOfDataClass++;
        }
    }
    @Override
    public void enterClassDeclaration(KotlinParser.ClassDeclarationContext ctx) {
        if (ctx.CLASS() != null) {
            numberOfClass++;
        }
    }
    /**
     * Getter for property 'numberOfClassModifier'.
     *
     * @return Value for property 'numberOfClassModifier'.
     */
    public int getNumberOfClassModifier() {
        return numberOfClassModifier;
    }
    /**
     * Getter for property 'numberOfDataClass'.
     *
     * @return Value for property 'numberOfDataClass'.
     */
    public int getNumberOfDataClass() {
        return numberOfDataClass;
    }
    /**
     * Getter for property 'numberOfClass'.
     *
     * @return Value for property 'numberOfClass'.
     */
    public int getNumberOfClass() {
        return numberOfClass;
    }
}
 
Then add to your code:
    KotlinLexer KotlinLexer = new KotlinLexer(CharStreams.fromStream(getClass().getResourceAsStream("./sampleKotlin.kt")));
    CommonTokenStream commonTokenStream = new CommonTokenStream(KotlinLexer);
    KotlinParser kotlinParser = new KotlinParser(commonTokenStream);
    ParseTree tree = kotlinParser.kotlinFile();
    ParseTreeWalker walker = new ParseTreeWalker();
    ClassCounterListener listener = new ClassCounterListener();
    walker.walk(listener, tree);