index.js
function(state, scope, secondaryScope) {
        state.createLexicalEnvironment();

        state.levelDown(scope);
        if(secondaryScope) state.levelDown(secondaryScope);

        while(state.token && !validators.isBlockEnd(state)) {
            state.processor.token(state);
        }

        if(secondaryScope) state.levelUp();
        state.levelUp();

        state.finalizeLexicalEnvironment();
    }
function(state, scope, secondaryScope) {
        state.createLexicalEnvironment();

        state.levelDown(scope);
        if(secondaryScope) state.levelDown(secondaryScope);

        while(state.token && !validators.isBlockEnd(state)) {
            state.processor.token(state);
        }

        if(secondaryScope) state.levelUp();
        state.levelUp();

        state.finalizeLexicalEnvironment();
    }
Parses statements until a block end is found.
@param state The parser state.
@param [scope] {string} The scope to use when parsing the statements inside the block.