Author: Jan Borsodi
Date: 2006-12-20 13:52:10 +0100 (Wed, 20 Dec 2006)
New Revision: 4418
Log:
- Fixed @property entries.
Modified:
scripts/clone-empty.php
Modified: scripts/clone-empty.php
===================================================================
--- scripts/clone-empty.php 2006-12-20 12:02:23 UTC (rev 4417)
+++ scripts/clone-empty.php 2006-12-20 12:52:10 UTC (rev 4418)
@@ -135,14 +135,12 @@
$new = "";
- /*
- for( $i = 0; $i < 100; $i++)
+/* for( $i = 0; $i < 100; $i++)
{
echo docblock_token_name( $i ) . "\n";
}
exit();
- */
-
+*/
$insideCode = false;
for ( $i = 0; $i < sizeof( $tokens ); $i++ )
@@ -197,6 +195,7 @@
}
else
{
+// echo "Token:", docblock_token_name( $tokens[$i][0] ),
$tokens[$i][1], "\n";
}
@@ -215,7 +214,8 @@
if( !$insideCode )
{
- $new .= str_replace( '$', '\a ', $tokens[$i][1] );
+// $new .= str_replace( '$', '\a ', $tokens[$i][1] );
+ $new .= $tokens[$i][1];
}
else
{
@@ -288,7 +288,8 @@
// Create the namespace
echo "package ".( isset( $classTags["@package"] ) ?
$classTags["@package"][0] : "PACKAGE_NOT_SET" ).";\n\n";
- echo processDocComment($rc, "class", $class );
+ $classBlock = processDocComment($rc, "class", $class );
+ echo $classBlock;
echo ("\n");
// Set the access type of the class.
@@ -354,6 +355,39 @@
}
echo "\n";
+ $o = 0;
+ while ( true )
+ {
+ $text = substr( $classBlock, $o );
+ if ( preg_match( "[EMAIL PROTECTED](-read|-write|)[
\t\r\n*]+([a-zA-Z][a-zA-Z0-9_]*)[ \t\r\n*]+(?:[$]?([a-zA-Z][a-zA-Z0-9_]*))[
\t\r\n*]+([EMAIL PROTECTED])#s",
+ $text, $matches, PREG_OFFSET_CAPTURE ) )
+ {
+ $propType = $matches[1][0];
+ $type = $matches[2][0];
+ $name = $matches[3][0];
+ $desc = $matches[4][0];
+ $desc = preg_replace( "#^[ \t]+[*]#m", " ", $desc );
+ $desc = preg_replace( "#[\r\n]#s", " ", $desc );
+ //echo "Got property ", $type, ":", $name, ":", $desc, "\n";
+ $extra = "";
+ if ( $propType == "-read" )
+ {
+ $extra = "\n * @note Read only.";
+ }
+ elseif ( $propType == "-write" )
+ {
+ $extra = "\n * @note Write only.";
+ }
+ echo "/**\n * $desc$extra\n */\n";
+ echo "public $type $name;\n";
+ $o += $matches[0][1] + strlen( $matches[0][0] );
+ }
+ else
+ {
+ break;
+ }
+ }
+
foreach ( $rc->getMethods() as $method )
{
// Don't show the parent class methods.
--
svn-components mailing list
[email protected]
http://lists.ez.no/mailman/listinfo/svn-components