src/main/java/com/github/fge/grappa/transform/ParserGenerator.java
private static void runMethodTransformers(final ParserClassNode classNode)
        throws Exception
    {
        // TODO: comment above may be right, but it's still dangerous
        // iterate through all rule methods
        // since the ruleMethods map on the classnode is a treemap we get the
        // methods sorted by name which puts all super methods first (since they
        // are prefixed with one or more '$')
        for (final RuleMethod ruleMethod: classNode.getRuleMethods().values()) {
            if (ruleMethod.hasDontExtend())
                continue;

            for (final RuleMethodProcessor methodProcessor: PROCESSORS)
                if (methodProcessor.appliesTo(classNode, ruleMethod))
                    methodProcessor.process(classNode, ruleMethod);
        }

        for (final RuleMethod ruleMethod: classNode.getRuleMethods().values())
            if (!ruleMethod.isGenerationSkipped())
                classNode.methods.add(ruleMethod);
    }
private static void runMethodTransformers(final ParserClassNode classNode)
        throws Exception
    {
        // TODO: comment above may be right, but it's still dangerous
        // iterate through all rule methods
        // since the ruleMethods map on the classnode is a treemap we get the
        // methods sorted by name which puts all super methods first (since they
        // are prefixed with one or more '$')
        for (final RuleMethod ruleMethod: classNode.getRuleMethods().values()) {
            if (ruleMethod.hasDontExtend())
                continue;

            for (final RuleMethodProcessor methodProcessor: PROCESSORS)
                if (methodProcessor.appliesTo(classNode, ruleMethod))
                    methodProcessor.process(classNode, ruleMethod);
        }

        for (final RuleMethod ruleMethod: classNode.getRuleMethods().values())
            if (!ruleMethod.isGenerationSkipped())
                classNode.methods.add(ruleMethod);
    }
private static void runMethodTransformers ( final ParserClassNode classNode ) throws Exception { // TODO: comment above may be right, but it's still dangerous // iterate through all rule methods // since the ruleMethods map on the classnode is a treemap we get the // methods sorted by name which puts all super methods first (since they // are prefixed with one or more '$') for ( final RuleMethod ruleMethod : classNode . getRuleMethods ( ) . values ( ) ) { if ( ruleMethod . hasDontExtend ( ) ) continue ; for ( final RuleMethodProcessor methodProcessor : PROCESSORS ) if ( methodProcessor . appliesTo ( classNode , ruleMethod ) ) methodProcessor . process ( classNode , ruleMethod ) ; } for ( final RuleMethod ruleMethod : classNode . getRuleMethods ( ) . values ( ) ) if ( ! ruleMethod . isGenerationSkipped ( ) ) classNode . methods . add ( ruleMethod ) ; }
TODO: poor exception handling again
TODO : poor exception handling again