<commit_before>package io.collap.bryg.compiler.parser;

import io.collap.bryg.compiler.util.IdUtil;
import io.collap.bryg.parser.BrygParser;
import io.collap.bryg.parser.BrygParserBaseVisitor;
import org.antlr.v4.runtime.ParserRuleContext;
import org.antlr.v4.runtime.misc.NotNull;

public class DebugVisitor extends BrygParserBaseVisitor<Integer> {

    @Override
    public Integer visitBinaryIsExpression (@NotNull BrygParser.BinaryIsExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryIsExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitUnaryPostfixExpression (@NotNull BrygParser.UnaryPostfixExpressionContext ctx) {
        visitAny (ctx);
        super.visitUnaryPostfixExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitAccessExpression (@NotNull BrygParser.AccessExpressionContext ctx) {
        visitAny (ctx);
        super.visitAccessExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryBitwiseOrExpression (@NotNull BrygParser.BinaryBitwiseOrExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryBitwiseOrExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryAddSubExpression (@NotNull BrygParser.BinaryAddSubExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryAddSubExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryShiftExpression (@NotNull BrygParser.BinaryShiftExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryShiftExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitExpressionPrecedenceOrder (@NotNull BrygParser.ExpressionPrecedenceOrderContext ctx) {
        visitAny (ctx);
        super.visitExpressionPrecedenceOrder (ctx);
        return 0;
    }

    @Override
    public Integer visitUnaryPrefixExpression (@NotNull BrygParser.UnaryPrefixExpressionContext ctx) {
        visitAny (ctx);
        super.visitUnaryPrefixExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryLogicalAndExpression (@NotNull BrygParser.BinaryLogicalAndExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryLogicalAndExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryRelationalExpression (@NotNull BrygParser.BinaryRelationalExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryRelationalExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitVariableExpression (@NotNull BrygParser.VariableExpressionContext ctx) {
        visitAny (ctx);
        super.visitVariableExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryEqualityExpression (@NotNull BrygParser.BinaryEqualityExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryEqualityExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryMulDivRemExpression (@NotNull BrygParser.BinaryMulDivRemExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryMulDivRemExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitLiteralExpression (@NotNull BrygParser.LiteralExpressionContext ctx) {
        visitAny (ctx);
        super.visitLiteralExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryAssignmentExpression (@NotNull BrygParser.BinaryAssignmentExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryAssignmentExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryBitwiseAndExpression (@NotNull BrygParser.BinaryBitwiseAndExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryBitwiseAndExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryLogicalOrExpression (@NotNull BrygParser.BinaryLogicalOrExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryLogicalOrExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitUnaryOperationExpression (@NotNull BrygParser.UnaryOperationExpressionContext ctx) {
        visitAny (ctx);
        super.visitUnaryOperationExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitCastExpression (@NotNull BrygParser.CastExpressionContext ctx) {
        visitAny (ctx);
        super.visitCastExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitFunctionCallExpression (@NotNull BrygParser.FunctionCallExpressionContext ctx) {
        visitAny (ctx);
        super.visitFunctionCallExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryBitwiseXorExpression (@NotNull BrygParser.BinaryBitwiseXorExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryBitwiseXorExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitArgument (@NotNull BrygParser.ArgumentContext ctx) {
        String name = ctx.argumentId ().getText ();
        visitAny (ctx, name);
        super.visitArgument (ctx);
        return 0;
    }

    @Override
    public Integer visitIfStatement (@NotNull BrygParser.IfStatementContext ctx) {
        visitAny (ctx);
        super.visitIfStatement (ctx);
        return 0;
    }

    @Override
    public Integer visitMethodCallExpression (@NotNull BrygParser.MethodCallExpressionContext ctx) {
        visitAny (ctx);
        super.visitMethodCallExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBlock (@NotNull BrygParser.BlockContext ctx) {
        visitAny (ctx);
        super.visitBlock (ctx);<commit_msg>Fix bug where an unnamed argument would lead to a NullPointerException.<commit_after>package io.collap.bryg.compiler.parser;

import io.collap.bryg.compiler.util.IdUtil;
import io.collap.bryg.parser.BrygParser;
import io.collap.bryg.parser.BrygParserBaseVisitor;
import org.antlr.v4.runtime.ParserRuleContext;
import org.antlr.v4.runtime.misc.NotNull;

public class DebugVisitor extends BrygParserBaseVisitor<Integer> {

    @Override
    public Integer visitBinaryIsExpression (@NotNull BrygParser.BinaryIsExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryIsExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitUnaryPostfixExpression (@NotNull BrygParser.UnaryPostfixExpressionContext ctx) {
        visitAny (ctx);
        super.visitUnaryPostfixExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitAccessExpression (@NotNull BrygParser.AccessExpressionContext ctx) {
        visitAny (ctx);
        super.visitAccessExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryBitwiseOrExpression (@NotNull BrygParser.BinaryBitwiseOrExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryBitwiseOrExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryAddSubExpression (@NotNull BrygParser.BinaryAddSubExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryAddSubExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryShiftExpression (@NotNull BrygParser.BinaryShiftExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryShiftExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitExpressionPrecedenceOrder (@NotNull BrygParser.ExpressionPrecedenceOrderContext ctx) {
        visitAny (ctx);
        super.visitExpressionPrecedenceOrder (ctx);
        return 0;
    }

    @Override
    public Integer visitUnaryPrefixExpression (@NotNull BrygParser.UnaryPrefixExpressionContext ctx) {
        visitAny (ctx);
        super.visitUnaryPrefixExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryLogicalAndExpression (@NotNull BrygParser.BinaryLogicalAndExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryLogicalAndExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryRelationalExpression (@NotNull BrygParser.BinaryRelationalExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryRelationalExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitVariableExpression (@NotNull BrygParser.VariableExpressionContext ctx) {
        visitAny (ctx);
        super.visitVariableExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryEqualityExpression (@NotNull BrygParser.BinaryEqualityExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryEqualityExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryMulDivRemExpression (@NotNull BrygParser.BinaryMulDivRemExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryMulDivRemExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitLiteralExpression (@NotNull BrygParser.LiteralExpressionContext ctx) {
        visitAny (ctx);
        super.visitLiteralExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryAssignmentExpression (@NotNull BrygParser.BinaryAssignmentExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryAssignmentExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryBitwiseAndExpression (@NotNull BrygParser.BinaryBitwiseAndExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryBitwiseAndExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryLogicalOrExpression (@NotNull BrygParser.BinaryLogicalOrExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryLogicalOrExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitUnaryOperationExpression (@NotNull BrygParser.UnaryOperationExpressionContext ctx) {
        visitAny (ctx);
        super.visitUnaryOperationExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitCastExpression (@NotNull BrygParser.CastExpressionContext ctx) {
        visitAny (ctx);
        super.visitCastExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitFunctionCallExpression (@NotNull BrygParser.FunctionCallExpressionContext ctx) {
        visitAny (ctx);
        super.visitFunctionCallExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBinaryBitwiseXorExpression (@NotNull BrygParser.BinaryBitwiseXorExpressionContext ctx) {
        visitAny (ctx);
        super.visitBinaryBitwiseXorExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitArgument (@NotNull BrygParser.ArgumentContext ctx) {
        String name;
        BrygParser.ArgumentIdContext id = ctx.argumentId ();
        if (id != null) {
            name = id.getText ();
        }else {
            name = "<unnamed>";
        }
        visitAny (ctx, name);
        super.visitArgument (ctx);
        return 0;
    }

    @Override
    public Integer visitIfStatement (@NotNull BrygParser.IfStatementContext ctx) {
        visitAny (ctx);
        super.visitIfStatement (ctx);
        return 0;
    }

    @Override
    public Integer visitMethodCallExpression (@NotNull BrygParser.MethodCallExpressionContext ctx) {
        visitAny (ctx);
        super.visitMethodCallExpression (ctx);
        return 0;
    }

    @Override
    public Integer visitBlock (@NotNull BrygParser.BlockContext ctx) {
        visitAny (ctx);
        super.visitBlock (ctx);
{'fraction_non_alphanumeric': 0.07389883000688231, 'fraction_numerical': 0.004473503097040606, 'mean_word_length': 3.037860368183397, 'pattern_counts': {'":': 0, '<': 6, '<?xml version=': 0, '>': 6, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6613557', 'n_tokens_mistral': 3057, 'n_tokens_neox': 2961, 'n_words': 708}