diff lisp/emacs-lisp/syntax.el @ 74600:ab428131b528

(syntax-ppss-toplevel-pos): New fun.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Tue, 12 Dec 2006 02:36:38 +0000
parents 53adfd470fe4
children 80f7458bbb20 6588c6259dfb
line wrap: on
line diff
--- a/lisp/emacs-lisp/syntax.el	Mon Dec 11 16:44:53 2006 +0000
+++ b/lisp/emacs-lisp/syntax.el	Tue Dec 12 02:36:38 2006 +0000
@@ -52,6 +52,14 @@
 (defsubst syntax-ppss-depth (ppss)
   (nth 0 ppss))
 
+(defun syntax-ppss-toplevel-pos (ppss)
+  "Return the last preceding position at toplevel.
+\"At toplevel\" means that it is outside of any syntactic entity:
+outside of any parentheses, or comments, or strings.
+Returns nil iff PPSS itself corresponds to a toplevel position."
+  (or (car (nth 9 ppss))
+      (nth 8 ppss)))      
+
 (defsubst syntax-ppss-context (ppss)
   (cond
    ((nth 3 ppss) 'string)