[Python-checkins] python/dist/src/Python pythonrun.c,2.161.2.1,2.161.2.2

jhylton@users.sourceforge.net jhylton@users.sourceforge.net
Sun, 07 Jul 2002 11:18:21 -0700


Update of /cvsroot/python/python/dist/src/Python
In directory usw-pr-cvs1:/tmp/cvs-serv11421/Python

Modified Files:
      Tag: ast-branch
	pythonrun.c 
Log Message:
Move PyParser_ASTFromString() and Filename() into pythonrun.h
where they interfere less with the parser.

Declare return value to be pointer to struct to avoid dependency on
Python-ast.h.

Make sure new interfaces use const where appopriate and chase this
partway into the parser.


Index: pythonrun.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/pythonrun.c,v
retrieving revision 2.161.2.1
retrieving revision 2.161.2.2
diff -C2 -d -r2.161.2.1 -r2.161.2.2
*** pythonrun.c	7 Jul 2002 17:43:08 -0000	2.161.2.1
--- pythonrun.c	7 Jul 2002 18:18:18 -0000	2.161.2.2
***************
*** 1160,1185 ****
  /* Preferred access to parser is through AST. */
  mod_ty
! PyParser_ASTFromString(char *s, char *filename, grammar *g, int start, 
! 		       perrdetail *err_ret, int flags)
  {
  	node *n;
! 	n = PyParser_ParseStringFlags(s, g, start, err_ret, flags);
  	if (n)
  		return PyAST_FromNode(n);
! 	else
  		return NULL;
  }
  
  mod_ty
! PyParser_ASTFromFile(FILE *fp, char *filename, grammar *g, int start, 
! 		     char *ps1, char *ps2, perrdetail *err_ret, int flags)
  {
  	node *n;
! 	n = PyParser_ParseFileFlags(fp, filename, g, start, ps1, ps2,
! 				    err_ret, flags);
  	if (n)
  		return PyAST_FromNode(n);
! 	else
  		return NULL;
  }
  
--- 1160,1192 ----
  /* Preferred access to parser is through AST. */
  mod_ty
! PyParser_ASTFromString(const char *s, const char *filename, int start, 
! 		       int flags)
  {
  	node *n;
! 	perrdetail err;
! 	n = PyParser_ParseStringFlags(s, &_PyParser_Grammar, start, &err, 
! 				      flags);
  	if (n)
  		return PyAST_FromNode(n);
! 	else {
! 		err_input(&err);
  		return NULL;
+ 	}
  }
  
  mod_ty
! PyParser_ASTFromFile(FILE *fp, const char *filename, int start, char *ps1, 
! 		     char *ps2, int flags)
  {
  	node *n;
! 	perrdetail err;
! 	n = PyParser_ParseFileFlags(fp, filename, &_PyParser_Grammar, start, 
! 				    ps1, ps2, &err, flags);
  	if (n)
  		return PyAST_FromNode(n);
! 	else {
! 		err_input(&err);
  		return NULL;
+ 	}
  }
  
***************
*** 1195,1198 ****
--- 1202,1206 ----
  	if (n == NULL)
  		err_input(&err);
+ 		
  	return n;
  }
***************
*** 1207,1211 ****
  
  node *
! PyParser_SimpleParseStringFlags(char *str, int start, int flags)
  {
  	node *n;
--- 1215,1219 ----
  
  node *
! PyParser_SimpleParseStringFlags(const char *str, int start, int flags)
  {
  	node *n;