                                                        lb
                                                        rb)))
   "AST node for an array index expression such as foo[bar]."
-  target  ; foo (can be any expression)
-  prop    ; bar (also any expression)
   lb      ; position of left-bracket, nil if omitted
   rb)     ; position of right-bracket, nil if omitted
 

     (save-excursion
       (js2-indent-looks-like-label-p)))))

;; TODO:  add a `js2-bounce-indent-function' so users can hook this
(defun js2-bounce-indent (normal-col parse-status)
  "Cycle among alternate computed indentation positions.
PARSE-STATUS is the result of `parse-partial-sexp' from the beginning

             (setq body (js2-function-node-body n)))
        (setq beg (js2-node-abs-pos body)
              end (+ beg (js2-node-len body)))
        (js2-mode-flag-region (1+ beg) (1- end) 'hide)
        nil)   ; don't process children of function
       (t
        t))))) ; keep processing other AST nodes
