Function: haskell-indentation-indent-line-repeat
haskell-indentation-indent-line-repeat is a natively compiled function
defined in haskell-indentation.el.
Signature
(haskell-indentation-indent-line-repeat)
Documentation
Cycle though indentation positions.
Source Code
;; Defined in /nix/store/9lz2mhw95f9fqxr9mnq46k3f6qz3aq83-emacs-packages-deps/share/emacs/site-lisp/elpa/haskell-mode-20260904.1042/haskell-indentation.el
(defun haskell-indentation-indent-line-repeat ()
"Cycle though indentation positions."
(cond
((and (memq last-command
'(indent-for-tab-command
haskell-indentation-indent-backwards))
(eq haskell-indentation-dyn-last-direction 'region))
(let ((mark-even-if-inactive t))
(haskell-indentation-indent-rigidly
(region-beginning)
(region-end)
1))
t)
((and (eq last-command 'indent-for-tab-command)
(memq haskell-indentation-dyn-last-direction '(left right))
haskell-indentation-dyn-last-indentations)
(let ((ci (haskell-indentation-current-indentation)))
(if (eq haskell-indentation-dyn-last-direction 'left)
(haskell-indentation-reindent-to
(haskell-indentation-previous-indentation
ci haskell-indentation-dyn-last-indentations 'nofail))
;; right
(if (haskell-indentation-next-indentation
ci haskell-indentation-dyn-last-indentations)
(haskell-indentation-reindent-to
(haskell-indentation-next-indentation
ci haskell-indentation-dyn-last-indentations 'nofail))
;; but failed, switch to left
(setq haskell-indentation-dyn-last-direction 'left)
(haskell-indentation-indent-line-repeat)))
t))
(t nil)))