Function: c-at-statement-start-p
c-at-statement-start-p is a byte-compiled function defined in
cc-engine.el.gz.
Signature
(c-at-statement-start-p)
Documentation
Return non-nil if point is at the first token in a statement or somewhere in the syntactic whitespace before it.
A "statement" here is not restricted to those inside code blocks. Any kind of declaration-like construct that occur outside function bodies is also considered a "statement".
Note that this function might do hidden buffer changes. See the comment at the start of cc-engine.el for more info.
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/cc-engine.el.gz
(defun c-at-statement-start-p ()
"Return non-nil if point is at the first token in a statement
or somewhere in the syntactic whitespace before it.
A \"statement\" here is not restricted to those inside code blocks.
Any kind of declaration-like construct that occur outside function
bodies is also considered a \"statement\".
Note that this function might do hidden buffer changes. See the
comment at the start of cc-engine.el for more info."
(save-excursion
(let ((end (point))
c-maybe-labelp)
(c-syntactic-skip-backward
(substring
(if c-commas-bound-stmts
c-stmt-delim-chars-with-comma
c-stmt-delim-chars)
1)
nil t)
(or (bobp)
(eq (char-before) ?})
(and (eq (char-before) ?{)
(not (and c-special-brace-lists
(progn (backward-char)
(c-looking-at-special-brace-list)))))
(c-crosses-statement-barrier-p (point) end)))))