override fun parse()

in gdscript/src/main/kotlin/gdscript/parser/stmt/GdForStmtParser.kt [14:29]


    override fun parse(b: GdPsiBuilder, l: Int, optional: Boolean): Boolean {
        if (!b.recursionGuard(l, "ForStmt")) return false
        if (!b.nextTokenIs(FOR)) return false

        var ok = b.consumeToken(FOR, pin = true)
        ok = ok && b.mceIdentifier(VAR_NMI)
        ok = ok && GdTypedParser.parse(b, l + 1, true)
        ok = ok && b.consumeToken(IN, true)
        ok = ok && GdExprParser.parse(b, l + 1)
        b.errorPin(ok, "expression")
        ok = ok && b.consumeToken(COLON, true)
        ok = ok && GdStmtParser.parse(b, l + 1)
        b.errorPin(ok, "statement")

        return ok
    }