Changeset 736 for trunk


Ignore:
Timestamp:
2011-04-10T16:38:36+02:00 (3 years ago)
Author:
moo
Message:

decompiler: fix argument default value

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Decompiler.class.php

    r735 r736  
    15581558                echo ', '; 
    15591559            } 
     1560            $arg = $EX['recvs'][$i + 1]; 
    15601561            if (isset($op_array['arg_info'])) { 
    15611562                $ai = $op_array['arg_info'][$i]; 
    15621563                if (!empty($ai['class_name'])) { 
    15631564                    echo $ai['class_name'], ' '; 
    1564                     if ($ai['allow_null']) { 
     1565                    if (!ZEND_ENGINE_2_2 && $ai['allow_null']) { 
    15651566                        echo 'or NULL '; 
    15661567                    } 
     
    15681569                else if (!empty($ai['array_type_hint'])) { 
    15691570                    echo 'array '; 
    1570                     if ($ai['allow_null']) { 
     1571                    if (!ZEND_ENGINE_2_2 && $ai['allow_null']) { 
    15711572                        echo 'or NULL '; 
    15721573                    } 
     
    15971598                    } 
    15981599                } 
    1599                 $arg = $EX['recvs'][$i + 1]; 
    16001600                echo toCode($arg[0], $indent); 
    1601                 if (isset($arg[1])) { 
    1602                     echo ' = ', toCode($arg[1], $indent); 
    1603                 } 
     1601            } 
     1602            if (isset($arg[1])) { 
     1603                echo ' = ', toCode($arg[1], $indent); 
    16041604            } 
    16051605        } 
  • trunk/decompilesample.php

    r734 r736  
    33class ClassName 
    44{ 
     5    /** doc */ 
    56    static public $static = array( 
    67        array('array'), 
    78        'str' 
    89        ); 
     10    /** doc */ 
    911    static public $public_static = array(2, 'str'); 
     12    /** doc */ 
    1013    static private $private_static = array(2, 'str'); 
     14    /** doc */ 
    1115    static protected $protected_static = array(2, 'str'); 
     16    /** doc */ 
    1217    public $property = array( 
    1318        array('array'), 
    1419        'str' 
    1520        ); 
     21    /** doc */ 
    1622    public $public_property = array(2, 'str'); 
     23    /** doc */ 
    1724    private $private_property = array(2, 'str'); 
     25    /** doc */ 
    1826    protected $protected_property = array(2, 'str'); 
    1927 
     28    /** doc */ 
    2029    public function __construct($a, $b) 
    2130    { 
    2231    } 
    2332 
    24     function method(ClassName $a = null, $b = null) 
     33    /** doc */ 
     34    public function method(array $a = NULL, $b = NULL) 
    2535    { 
    2636    } 
    2737 
    28     public function publicMethod(ClassName $a = null, $b = 2) 
     38    /** doc */ 
     39    public function publicMethod(ClassName $a = NULL, $b = 2) 
    2940    { 
    3041    } 
    3142 
    32     protected function protectedMethod(ClassName $a, $b = array(array("array"))) 
     43    /** doc */ 
     44    protected function protectedMethod(ClassName $a, $b = array( 
     45        array('array') 
     46        )) 
    3347    { 
    3448        return 'protected'; 
    3549    } 
    3650 
    37     private function privateMethod(ClassName $a, $b = null) 
     51    /** doc */ 
     52    private function privateMethod(ClassName $a, $b = NULL) 
    3853    { 
    3954        return 'private'; 
Note: See TracChangeset for help on using the changeset viewer.