johannes Sun Apr 8 00:17:40 2007 UTC Modified files: /php-src/ext/tokenizer tokenizer.c /php-src/ext/tokenizer/tests 002.phpt 003.phpt bug26463.phpt Log: - Added linenumbers to array returned by token_get_all()
http://cvs.php.net/viewvc.cgi/php-src/ext/tokenizer/tokenizer.c?r1=1.40&r2=1.41&diff_format=u Index: php-src/ext/tokenizer/tokenizer.c diff -u php-src/ext/tokenizer/tokenizer.c:1.40 php-src/ext/tokenizer/tokenizer.c:1.41 --- php-src/ext/tokenizer/tokenizer.c:1.40 Fri Jan 12 12:16:36 2007 +++ php-src/ext/tokenizer/tokenizer.c Sun Apr 8 00:17:40 2007 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: tokenizer.c,v 1.40 2007/01/12 12:16:36 tony2001 Exp $ */ +/* $Id: tokenizer.c,v 1.41 2007/04/08 00:17:40 johannes Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -272,6 +272,7 @@ zval *keyword; int token_type; zend_bool destroy; + int token_line = 1; CG(literal_type) = UG(unicode)?IS_UNICODE:IS_STRING; @@ -301,6 +302,7 @@ } else { add_next_index_stringl(keyword, zendtext, zendleng, 1); } + add_next_index_long(keyword, token_line); add_next_index_zval(return_value, keyword); } else { add_next_index_stringl(return_value, zendtext, zendleng, 1); @@ -309,6 +311,8 @@ zval_dtor(&token); } ZVAL_NULL(&token); + + token_line = CG(zend_lineno); } } http://cvs.php.net/viewvc.cgi/php-src/ext/tokenizer/tests/002.phpt?r1=1.7&r2=1.8&diff_format=u Index: php-src/ext/tokenizer/tests/002.phpt diff -u php-src/ext/tokenizer/tests/002.phpt:1.7 php-src/ext/tokenizer/tests/002.phpt:1.8 --- php-src/ext/tokenizer/tests/002.phpt:1.7 Tue Jun 20 18:14:12 2006 +++ php-src/ext/tokenizer/tests/002.phpt Sun Apr 8 00:17:40 2007 @@ -22,765 +22,959 @@ --EXPECT-- array(49) { [0]=> - array(2) { + array(3) { [0]=> int(370) [1]=> string(2) "<?" + [2]=> + int(1) } [1]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [2]=> - array(2) { + array(3) { [0]=> int(318) [1]=> string(4) "echo" + [2]=> + int(1) } [3]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [4]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "1" + [2]=> + int(1) } [5]=> string(1) ";" [6]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [7]=> - array(2) { + array(3) { [0]=> int(303) [1]=> string(2) "if" + [2]=> + int(1) } [8]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [9]=> string(1) "(" [10]=> - array(2) { + array(3) { [0]=> int(352) [1]=> string(5) "isset" + [2]=> + int(1) } [11]=> string(1) "(" [12]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$a" + [2]=> + int(1) } [13]=> string(1) ")" [14]=> string(1) ")" [15]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [16]=> - array(2) { + array(3) { [0]=> int(266) [1]=> string(5) "print" + [2]=> + int(1) } [17]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [18]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$a" + [2]=> + int(1) } [19]=> string(1) "+" [20]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "1" + [2]=> + int(1) } [21]=> string(1) ";" [22]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [23]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$a" + [2]=> + int(1) } [24]=> - array(2) { + array(3) { [0]=> int(299) [1]=> string(2) "++" + [2]=> + int(1) } [25]=> string(1) ";" [26]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [27]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$a" + [2]=> + int(1) } [28]=> - array(2) { + array(3) { [0]=> int(298) [1]=> string(2) "--" + [2]=> + int(1) } [29]=> string(1) ";" [30]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [31]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$a" + [2]=> + int(1) } [32]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [33]=> - array(2) { + array(3) { [0]=> int(283) [1]=> string(2) "==" + [2]=> + int(1) } [34]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [35]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "2" + [2]=> + int(1) } [36]=> string(1) ";" [37]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [38]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$a" + [2]=> + int(1) } [39]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [40]=> - array(2) { + array(3) { [0]=> int(281) [1]=> string(3) "===" + [2]=> + int(1) } [41]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [42]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "2" + [2]=> + int(1) } [43]=> string(1) ";" [44]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [45]=> - array(2) { + array(3) { [0]=> int(306) [1]=> string(5) "endif" + [2]=> + int(1) } [46]=> string(1) ";" [47]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [48]=> - array(2) { + array(3) { [0]=> int(372) [1]=> string(2) "?>" + [2]=> + int(1) } } array(37) { [0]=> - array(2) { + array(3) { [0]=> int(370) [1]=> string(6) "<?php " + [2]=> + int(1) } [1]=> - array(2) { + array(3) { [0]=> int(329) [1]=> string(6) "switch" + [2]=> + int(1) } [2]=> string(1) "(" [3]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$a" + [2]=> + int(1) } [4]=> string(1) ")" [5]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [6]=> string(1) "{" [7]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [8]=> - array(2) { + array(3) { [0]=> int(331) [1]=> string(4) "case" + [2]=> + int(1) } [9]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [10]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "1" + [2]=> + int(1) } [11]=> string(1) ":" [12]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [13]=> - array(2) { + array(3) { [0]=> int(333) [1]=> string(5) "break" + [2]=> + int(1) } [14]=> string(1) ";" [15]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [16]=> - array(2) { + array(3) { [0]=> int(332) [1]=> string(7) "default" + [2]=> + int(1) } [17]=> string(1) ":" [18]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [19]=> - array(2) { + array(3) { [0]=> int(333) [1]=> string(5) "break" + [2]=> + int(1) } [20]=> string(1) ";" [21]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [22]=> string(1) "}" [23]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [24]=> - array(2) { + array(3) { [0]=> int(320) [1]=> string(5) "while" + [2]=> + int(1) } [25]=> string(1) "(" [26]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$a" + [2]=> + int(1) } [27]=> string(1) ")" [28]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [29]=> string(1) "{" [30]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [31]=> - array(2) { + array(3) { [0]=> int(302) [1]=> string(4) "exit" + [2]=> + int(1) } [32]=> string(1) ";" [33]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [34]=> string(1) "}" [35]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [36]=> - array(2) { + array(3) { [0]=> int(372) [1]=> string(2) "?>" + [2]=> + int(1) } } array(48) { [0]=> - array(2) { + array(3) { [0]=> int(370) [1]=> string(2) "<?" + [2]=> + int(1) } [1]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [2]=> - array(2) { + array(3) { [0]=> int(368) [1]=> string(13) "/* comment */" + [2]=> + int(1) } [3]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [4]=> - array(2) { + array(3) { [0]=> int(303) [1]=> string(2) "if" + [2]=> + int(1) } [5]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [6]=> string(1) "(" [7]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "1" + [2]=> + int(1) } [8]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [9]=> - array(2) { + array(3) { [0]=> int(278) [1]=> string(2) "||" + [2]=> + int(1) } [10]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [11]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "2" + [2]=> + int(1) } [12]=> string(1) ")" [13]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [14]=> string(1) "{" [15]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [16]=> string(1) "}" [17]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [18]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$a" + [2]=> + int(1) } [19]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [20]=> string(1) "=" [21]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [22]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "2" + [2]=> + int(1) } [23]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [24]=> string(1) "|" [25]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [26]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "1" + [2]=> + int(1) } [27]=> string(1) ";" [28]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [29]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$b" + [2]=> + int(1) } [30]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [31]=> string(1) "=" [32]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [33]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "3" + [2]=> + int(1) } [34]=> string(1) "^" [35]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "2" + [2]=> + int(1) } [36]=> string(1) ";" [37]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [38]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$c" + [2]=> + int(1) } [39]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [40]=> string(1) "=" [41]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [42]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "4" + [2]=> + int(1) } [43]=> string(1) "&" [44]=> - array(2) { + array(3) { [0]=> int(307) [1]=> string(1) "2" + [2]=> + int(1) } [45]=> string(1) ";" [46]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(1) } [47]=> - array(2) { + array(3) { [0]=> int(372) [1]=> string(2) "?>" + [2]=> + int(1) } } array(1) { [0]=> - array(2) { + array(3) { [0]=> int(313) [1]=> string(17) "wrong syntax here" + [2]=> + int(1) } } Done http://cvs.php.net/viewvc.cgi/php-src/ext/tokenizer/tests/003.phpt?r1=1.6&r2=1.7&diff_format=u Index: php-src/ext/tokenizer/tests/003.phpt diff -u php-src/ext/tokenizer/tests/003.phpt:1.6 php-src/ext/tokenizer/tests/003.phpt:1.7 --- php-src/ext/tokenizer/tests/003.phpt:1.6 Tue Jun 20 18:14:12 2006 +++ php-src/ext/tokenizer/tests/003.phpt Sun Apr 8 00:17:40 2007 @@ -23,20 +23,24 @@ } array(1) { [0]=> - array(2) { + array(3) { [0]=> int(313) [1]=> string(1) "0" + [2]=> + int(1) } } array(1) { [0]=> - array(2) { + array(3) { [0]=> int(313) [1]=> string(2) "-1" + [2]=> + int(1) } } Done @@ -50,20 +54,24 @@ } array(1) { [0]=> - array(2) { + array(3) { [0]=> int(313) [1]=> string(1) "0" + [2]=> + int(1) } } array(1) { [0]=> - array(2) { + array(3) { [0]=> int(313) [1]=> string(2) "-1" + [2]=> + int(1) } } Done http://cvs.php.net/viewvc.cgi/php-src/ext/tokenizer/tests/bug26463.phpt?r1=1.8&r2=1.9&diff_format=u Index: php-src/ext/tokenizer/tests/bug26463.phpt diff -u php-src/ext/tokenizer/tests/bug26463.phpt:1.8 php-src/ext/tokenizer/tests/bug26463.phpt:1.9 --- php-src/ext/tokenizer/tests/bug26463.phpt:1.8 Tue Jun 20 18:14:12 2006 +++ php-src/ext/tokenizer/tests/bug26463.phpt Sun Apr 8 00:17:40 2007 @@ -18,238 +18,294 @@ --EXPECT-- array(19) { [0]=> - array(2) { + array(3) { [0]=> int(370) [1]=> string(6) "<?php " + [2]=> + int(1) } [1]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$x" + [2]=> + int(2) } [2]=> string(1) "=" [3]=> - array(2) { + array(3) { [0]=> int(374) [1]=> string(6) "<<<DD " + [2]=> + int(2) } [4]=> - array(2) { + array(3) { [0]=> int(309) [1]=> string(13) "jhdsjkfhjdsh " + [2]=> + int(3) } [5]=> - array(2) { + array(3) { [0]=> int(375) [1]=> string(2) "DD" + [2]=> + int(4) } [6]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(4) } [7]=> string(1) "." [8]=> - array(2) { + array(3) { [0]=> int(317) [1]=> string(2) """" + [2]=> + int(5) } [9]=> string(1) ";" [10]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(5) } [11]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$a" + [2]=> + int(6) } [12]=> string(1) "=" [13]=> - array(2) { + array(3) { [0]=> int(374) [1]=> string(8) "<<<DDDD " + [2]=> + int(6) } [14]=> - array(2) { + array(3) { [0]=> int(309) [1]=> string(13) "jhdsjkfhjdsh " + [2]=> + int(7) } [15]=> - array(2) { + array(3) { [0]=> int(375) [1]=> string(4) "DDDD" + [2]=> + int(8) } [16]=> string(1) ";" [17]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(8) } [18]=> - array(2) { + array(3) { [0]=> int(372) [1]=> string(2) "?>" + [2]=> + int(9) } } --UEXPECTF-- array(19) { [0]=> - array(2) { + array(3) { [0]=> int(370) [1]=> string(6) "<?php " + [2]=> + int(1) } [1]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$x" + [2]=> + int(2) } [2]=> string(1) "=" [3]=> - array(2) { + array(3) { [0]=> int(374) [1]=> string(6) "<<<DD " + [2]=> + int(2) } [4]=> - array(2) { + array(3) { [0]=> int(309) [1]=> string(13) "jhdsjkfhjdsh " + [2]=> + int(3) } [5]=> - array(2) { + array(3) { [0]=> int(375) [1]=> string(2) "DD" + [2]=> + int(4) } [6]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(4) } [7]=> string(1) "." [8]=> - array(2) { + array(3) { [0]=> int(317) [1]=> string(2) """" + [2]=> + int(5) } [9]=> string(1) ";" [10]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(5) } [11]=> - array(2) { + array(3) { [0]=> int(311) [1]=> string(2) "$a" + [2]=> + int(6) } [12]=> string(1) "=" [13]=> - array(2) { + array(3) { [0]=> int(374) [1]=> string(8) "<<<DDDD " + [2]=> + int(6) } [14]=> - array(2) { + array(3) { [0]=> int(309) [1]=> string(13) "jhdsjkfhjdsh " + [2]=> + int(7) } [15]=> - array(2) { + array(3) { [0]=> int(375) [1]=> string(4) "DDDD" + [2]=> + int(8) } [16]=> string(1) ";" [17]=> - array(2) { + array(3) { [0]=> int(373) [1]=> string(1) " " + [2]=> + int(8) } [18]=> - array(2) { + array(3) { [0]=> int(372) [1]=> string(2) "?>" + [2]=> + int(9) } }
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php