Function: semantic-lex-push-token
semantic-lex-push-token is a macro defined in lex.el.gz.
Signature
(semantic-lex-push-token TOKEN &rest BLOCKSPECS)
Documentation
Push TOKEN in the lexical analyzer token stream.
Return the lexical analysis current end point.
If optional arguments BLOCKSPECS is non-nil, it specifies to process
collapsed block tokens. See semantic-lex-expand-block-specs for
more details.
This macro should only be called within the bounds of
define-lex-analyzer. It changes the values of the lexical analyzer
variables token-stream and semantic-lex-end-point. If you need to
move semantic-lex-end-point somewhere else, just modify this
variable after calling semantic-lex-push-token.
Source Code
;; Defined in /usr/src/emacs/lisp/cedet/semantic/lex.el.gz
(defmacro semantic-lex-push-token (token &rest blockspecs)
"Push TOKEN in the lexical analyzer token stream.
Return the lexical analysis current end point.
If optional arguments BLOCKSPECS is non-nil, it specifies to process
collapsed block tokens. See `semantic-lex-expand-block-specs' for
more details.
This macro should only be called within the bounds of
`define-lex-analyzer'. It changes the values of the lexical analyzer
variables `token-stream' and `semantic-lex-end-point'. If you need to
move `semantic-lex-end-point' somewhere else, just modify this
variable after calling `semantic-lex-push-token'."
`(progn
(push ,token semantic-lex-token-stream)
,@(semantic-lex-expand-block-specs blockspecs)
(setq semantic-lex-end-point
(semantic-lex-token-end (car semantic-lex-token-stream)))
))