Browse Source

Implemented hook_read_{after,before} callers.

Sander Mathijs van Veen 14 năm trước cách đây
mục cha
commit
8ec21981dc
1 tập tin đã thay đổi với 5 bổ sung2 xóa
  1. 5 2
      src/pyrex/bison_.pyx

+ 5 - 2
src/pyrex/bison_.pyx

@@ -126,13 +126,16 @@ cdef public void py_input(object parser, char *buf, int *result, int max_size):
     if parser.verbose:
     if parser.verbose:
         print '\npy_input: want to read up to %s bytes' % max_size
         print '\npy_input: want to read up to %s bytes' % max_size
 
 
+    if hasattr(parser, 'hook_read_before'):
+        parser.hook_read_before()
+
     try:
     try:
         raw = parser.read(max_size)
         raw = parser.read(max_size)
     except KeyboardInterrupt:
     except KeyboardInterrupt:
         raw = ''
         raw = ''
 
 
-    if hasattr(parser, 'hook_read'):
-        raw = parser.hook_read(raw)
+    if hasattr(parser, 'hook_read_after'):
+        raw = parser.hook_read_after(raw)
 
 
     buflen = PyInt_AsLong(len(raw))
     buflen = PyInt_AsLong(len(raw))
     result[0] = buflen
     result[0] = buflen