For Programmers: Free Programming Magazines  


Home > Archive > PHP Documentation > January 2006 > cvs: phpdoc /scripts zendapi_protos.php









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author cvs: phpdoc /scripts zendapi_protos.php
Hartmut Holzgraefe

2006-01-14, 6:56 pm

hholzgra Sat Jan 14 14:23:41 2006 UTC

Modified files:
/phpdoc/scripts zendapi_protos.php
Log:
- ungreedy proto matching
- optionally allow overwrites, reuse Revision: line of existing file then


http://cvs.php.net/viewcvs.cgi/phpd...4&diff_format=u
Index: phpdoc/scripts/zendapi_protos.php
diff -u phpdoc/scripts/zendapi_protos.php:1.13 phpdoc/scripts/zendapi_protos.php:1.14
--- phpdoc/scripts/zendapi_protos.php:1.13 Sat Jan 14 12:31:01 2006
+++ phpdoc/scripts/zendapi_protos.php Sat Jan 14 14:23:41 2006
@@ -1,4 +1,6 @@
<?php
+$overwrite = false;
+
$zend_include_dir = "../../php-src/Zend";

$zend_include_files = array("zend.h",
@@ -30,7 +32,7 @@
if (!strncmp("ZEND_API", $line, 8)) {

// parse prototypes, step #1
- if (preg_match('|^ZEND_API\s+(\S+)\s+(\S+)\
((.*)\);$|', $line, $matches)) {
+ if (preg_match('|^ZEND_API\s+(\S+)\s+(\S+)\
((.*)\);$|U', $line, $matches)) {

// extract return type and function name
$return_type = $matches[1];
@@ -48,12 +50,23 @@

// only proceed it fhe file doesn't exist yet (no overwrites)
// and do not expose functions staring with '_'
- if (($function[0] != '_') && !file_exists($filename)) {
+ if (($function[0] != '_') && ($overwrite || !file_exists($filename)) {
// now write the template file to phpdoc/en/internals/zendapi/functions
ob_start();

echo '<?xml version="1.0" encoding="iso-8859-1"?>'."\n";
- echo "<!-- $"."Revision: 1.3 $ -->\n";
+
+ // take revision from existing file
+ if (!$overwrite || !file_exists($filename)) {
+ echo "<!-- $"."Revision: 1.1 $ -->\n";
+ } else {
+ foreach (file($filename) as $line) {
+ if (strstr($line, 'Revision: ')) {
+ echo $line;
+ break;
+ }
+ }
+ }

// the parameters are spearated by commas
// TODO find a better way to handle TSRMLS_D and TSRMLS_DC
Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com