| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | :mod:`token` --- Constants used with Python parse trees
 | 
					
						
							|  |  |  | =======================================================
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. module:: token
 | 
					
						
							|  |  |  |    :synopsis: Constants representing terminal nodes of the parse tree.
 | 
					
						
							| 
									
										
										
										
											2016-06-11 15:02:54 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | .. sectionauthor:: Fred L. Drake, Jr. <fdrake@acm.org>
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-01-27 01:20:32 +00:00
										 |  |  | **Source code:** :source:`Lib/token.py`
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | --------------
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | This module provides constants which represent the numeric values of leaf nodes
 | 
					
						
							| 
									
										
										
										
											2020-07-26 08:27:52 -07:00
										 |  |  | of the parse tree (terminal tokens).  Refer to the file :file:`Grammar/Tokens`
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | in the Python distribution for the definitions of the names in the context of
 | 
					
						
							|  |  |  | the language grammar.  The specific numeric values which the names map to may
 | 
					
						
							|  |  |  | change between Python versions.
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-10-17 09:46:11 +00:00
										 |  |  | The module also provides a mapping from numeric codes to names and some
 | 
					
						
							|  |  |  | functions.  The functions mirror definitions in the Python C header files.
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. data:: tok_name
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Dictionary mapping the numeric values of the constants defined in this module
 | 
					
						
							|  |  |  |    back to name strings, allowing more human-readable representation of parse trees
 | 
					
						
							|  |  |  |    to be generated.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. function:: ISTERMINAL(x)
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-12 16:57:03 +02:00
										 |  |  |    Return ``True`` for terminal token values.
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. function:: ISNONTERMINAL(x)
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-12 16:57:03 +02:00
										 |  |  |    Return ``True`` for non-terminal token values.
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. function:: ISEOF(x)
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-12 16:57:03 +02:00
										 |  |  |    Return ``True`` if *x* is the marker indicating the end of input.
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-10-17 09:46:11 +00:00
										 |  |  | The token constants are:
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-12-22 11:18:40 +02:00
										 |  |  | .. include:: token-list.inc
 | 
					
						
							| 
									
										
										
										
											2017-05-31 15:00:21 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-06-06 18:43:35 +03:00
										 |  |  | The following token type values aren't used by the C tokenizer but are needed for
 | 
					
						
							|  |  |  | the :mod:`tokenize` module.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. data:: COMMENT
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Token value used to indicate a comment.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. data:: NL
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Token value used to indicate a non-terminating newline.  The
 | 
					
						
							|  |  |  |    :data:`NEWLINE` token indicates the end of a logical line of Python code;
 | 
					
						
							|  |  |  |    ``NL`` tokens are generated when a logical line of code is continued over
 | 
					
						
							|  |  |  |    multiple physical lines.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. data:: ENCODING
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Token value that indicates the encoding used to decode the source bytes
 | 
					
						
							|  |  |  |    into text. The first token returned by :func:`tokenize.tokenize` will
 | 
					
						
							|  |  |  |    always be an ``ENCODING`` token.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-01-31 03:40:27 -08:00
										 |  |  | .. data:: TYPE_COMMENT
 | 
					
						
							| 
									
										
										
										
											2020-08-13 21:41:54 +02:00
										 |  |  |    :noindex: | 
					
						
							| 
									
										
										
										
											2019-01-31 03:40:27 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  |    Token value indicating that a type comment was recognized.  Such
 | 
					
						
							|  |  |  |    tokens are only produced when :func:`ast.parse()` is invoked with
 | 
					
						
							|  |  |  |    ``type_comments=True``.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-06-06 18:43:35 +03:00
										 |  |  | .. versionchanged:: 3.5
 | 
					
						
							| 
									
										
										
										
											2017-10-05 20:24:46 -07:00
										 |  |  |    Added :data:`AWAIT` and :data:`ASYNC` tokens.
 | 
					
						
							| 
									
										
										
										
											2017-06-06 18:43:35 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | .. versionchanged:: 3.7
 | 
					
						
							|  |  |  |    Added :data:`COMMENT`, :data:`NL` and :data:`ENCODING` tokens.
 | 
					
						
							| 
									
										
										
										
											2017-10-05 20:24:46 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | .. versionchanged:: 3.7
 | 
					
						
							|  |  |  |    Removed :data:`AWAIT` and :data:`ASYNC` tokens. "async" and "await" are
 | 
					
						
							|  |  |  |    now tokenized as :data:`NAME` tokens.
 | 
					
						
							| 
									
										
										
										
											2019-01-31 03:40:27 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  | .. versionchanged:: 3.8
 | 
					
						
							| 
									
										
										
										
											2020-02-28 15:25:36 -08:00
										 |  |  |    Added :data:`TYPE_COMMENT`, :data:`TYPE_IGNORE`, :data:`COLONEQUAL`.
 | 
					
						
							| 
									
										
										
										
											2019-03-07 12:38:08 -08:00
										 |  |  |    Added :data:`AWAIT` and :data:`ASYNC` tokens back (they're needed
 | 
					
						
							|  |  |  |    to support parsing older Python versions for :func:`ast.parse` with
 | 
					
						
							|  |  |  |    ``feature_version`` set to 6 or lower).
 |