com gtk/php-gtk: *** empty log message ***: generator/generator.php generator/override.php
[email protected] (David Soria Parra) Mon, 27 Mar 2006 04:23:11 +0000
| Newsgroups | php.gtk.cvs |
|---|---|
| Message-ID | <[email protected]> |
Commit: e7901e6ef071c6fe20c33a651ded6d39b4c56e94 Author: Andrei Zmievski <[email protected]> Mon, 27 Mar 2006 04:23:11 +0000 Parents: 19cf4ad4515a6b2a2c4b9e91d02b8844db313787 Branches: master Link: http://git.php.net/?p=gtk/php-gtk.git;a=commitdiff;h=e7901e6ef071c6fe20c33a651ded6d39b4c56e94 Log: *** empty log message *** Changed paths: M generator/generator.php M generator/override.php Diff: e7901e6ef071c6fe20c33a651ded6d39b4c56e94 diff --git a/generator/generator.php b/generator/generator.php index fc914ba..0e11b1c 100644 --- a/generator/generator.php +++ b/generator/generator.php @@ -329,13 +329,14 @@ class Generator { } if ($this->overrides->have_extra_methods($object->c_name)) { - foreach ($this->overrides->get_extra_methods($object->c_name) as $method_name => $method_body) { + foreach ($this->overrides->get_extra_methods($object->c_name) as $method_name => $override) { + list($method_body, $flags) = $override; list($arginfo, $reflection_func) = $this->genReflectionArgInfo(null, $object, $method_name); $method_body = preg_replace('!^.*(PHP_METHOD).*$!m', "static $1($object->c_name, $method_name)", $method_body); $this->write_override($method_body, $object->c_name, $method_name); $method_entries[$method_name] = array($object->c_name, $method_name, - $reflection_func, 'ZEND_ACC_PUBLIC'); + $reflection_func, $flags ? $flags : 'ZEND_ACC_PUBLIC'); $this->divert("gen", "%s %-11s %s::%s\n", "%%", "method", $object->c_name, $method_name); $num_written++; $this->cover["methods"]->written(); @@ -871,7 +872,8 @@ class Generator { } if ($this->overrides->have_extra_methods($this->prefix)) { - foreach ($this->overrides->get_extra_methods($this->prefix) as $func_name => $func_body) { + foreach ($this->overrides->get_extra_methods($this->prefix) as $func_name => $override) { + list($func_body, $flags) = $override; list($arginfo, $reflection_func) = $this->genReflectionArgInfo(null, $object, $func_name); $func_body = preg_replace('!^.*(PHP_METHOD).*$!m', "static $1($this->prefix, $func_name)", $func_body); diff --git a/generator/override.php b/generator/override.php index 10dadf6..829c791 100644 --- a/generator/override.php +++ b/generator/override.php @@ -186,7 +186,11 @@ class Overrides { if (count($words) < 2) break; $class = $words[0]; $method = $words[1]; - $this->extra_methods[$class][$method] = $rest; + if (isset($words[2])) + $flags = $words[2]; + else + $flags = null; + $this->extra_methods[$class][$method] = array($rest, $flags); $this->lineinfo["$class.$method"] = array($blocklineno + 1, $file_name); break;