Mercurial > cpython-lru_cache-weakref
view Include/node.h @ 59827:ec84fbcdf7cb
Merged revisions 79207 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r79207 | florent.xicluna | 2010-03-21 19:00:38 +0100 (dim, 21 mar 2010) | 2 lines
#8180: Fix test_pep277 on OS X and add more tests for special Unicode normalization cases.
........
| author | Florent Xicluna <florent.xicluna@gmail.com> |
|---|---|
| date | Sun, 21 Mar 2010 18:49:50 +0000 |
| parents | 57322cb2ca11 |
| children | aceb975c4832 169fbbac2dec |
line wrap: on
line source
/* Parse tree node interface */ #ifndef Py_NODE_H #define Py_NODE_H #ifdef __cplusplus extern "C" { #endif typedef struct _node { short n_type; char *n_str; int n_lineno; int n_col_offset; int n_nchildren; struct _node *n_child; } node; PyAPI_FUNC(node *) PyNode_New(int type); PyAPI_FUNC(int) PyNode_AddChild(node *n, int type, char *str, int lineno, int col_offset); PyAPI_FUNC(void) PyNode_Free(node *n); /* Node access functions */ #define NCH(n) ((n)->n_nchildren) #define CHILD(n, i) (&(n)->n_child[i]) #define RCHILD(n, i) (CHILD(n, NCH(n) + i)) #define TYPE(n) ((n)->n_type) #define STR(n) ((n)->n_str) /* Assert that the type of a node is what we expect */ #define REQ(n, type) assert(TYPE(n) == (type)) PyAPI_FUNC(void) PyNode_ListTree(node *); #ifdef __cplusplus } #endif #endif /* !Py_NODE_H */
