uw              Sun Feb 18 07:03:06 2001 EDT

  Modified files:              
    /php4/pear/PHPDoc/accessor  PhpdocAccessor.php 
                                PhpdocClassAccessor.php 
                                PhpdocDocumentAccessor.php 
                                PhpdocIndexAccessor.php 
                                PhpdocModuleAccessor.php 
                                PhpdocWarningAccessor.php 
  Log:
  Sorry, whitespace only changes to follow the PEAR Coding conventions. Replaced tabs 
with spaces.
  
  
Index: php4/pear/PHPDoc/accessor/PhpdocAccessor.php
diff -u php4/pear/PHPDoc/accessor/PhpdocAccessor.php:1.1 
php4/pear/PHPDoc/accessor/PhpdocAccessor.php:1.2
--- php4/pear/PHPDoc/accessor/PhpdocAccessor.php:1.1    Sun Oct  8 03:03:18 2000
+++ php4/pear/PHPDoc/accessor/PhpdocAccessor.php        Sun Feb 18 07:03:05 2001
@@ -4,74 +4,76 @@
 * 
 * It's up to you eigther to use this class to access 
 * the phpdoc xml files or to write your own parser.
+*
+* @version  $Id: PhpdocAccessor.php,v 1.2 2001/02/18 15:03:05 uw Exp $
 */
 class PhpdocAccessor extends PhpdocObject {
 
-       /**
-       * Instance of PhpdocXMLReader
-       * @var  object  PhpdocXMLReader $xmlreader
-       */      
-       var $xmlreader;
-       
-       /**
-       * Result of the PhpdocXMLReader
-       * @var  array   $xml
-       */
-       var $xml = array();
-       
-       /**
-       * Free xml resources on calling a getXY() function?
-       * 
-       * One of the design goals was to minimize the memory consumption of PHPdoc.
-       * So PHPdoc tries to save data as soon as possible to the disk, reuse objects
-       * and free resources of an object when they are no longer needed. The default 
-       * value of true will cause the object to free the memory used by the 
-       * xml data as soon as possible.
-       * 
-       * @var  boolean
-       */      
-       var $freeOnGet = true;
+    /**
+    * Instance of PhpdocXMLReader
+    * @var  object  PhpdocXMLReader $xmlreader
+    */    
+    var $xmlreader;
+    
+    /**
+    * Result of the PhpdocXMLReader
+    * @var    array    $xml
+    */
+    var $xml = array();
+    
+    /**
+    * Free xml resources on calling a getXY() function?
+    * 
+    * One of the design goals was to minimize the memory consumption of PHPdoc.
+    * So PHPdoc tries to save data as soon as possible to the disk, reuse objects
+    * and free resources of an object when they are no longer needed. The default 
+    * value of true will cause the object to free the memory used by the 
+    * xml data as soon as possible.
+    * 
+    * @var  boolean
+    */    
+    var $freeOnGet = true;
 
-       /**
-       * Reformatted PhpdocXMLReader result array
-       * @var  array
-       */
-       var $data = array();
-       
-       /**
-       * Loads the specified xml file. 
-       *
-       * @param        string  Name of the xml file
-       * @return       boolean False if the given xml file was not 
-       *                                                                       found 
or is empty otherwise true.
-       * @access       public
-       * @see          init()
-       */
-       function loadXMLFile($filename) {
-       
-               $this->xmlreader = new PhpdocXMLReader;
-               
-               $this->xml = $this->xmlreader->parse($filename);
-               $this->xml = $this->xml["phpdoc"];
-               $ok = (!is_array($this->xml) || 0==count($this->xml)) ? false : true;
-               
-               $this->init();
-               
-               return $ok;             
-       } // end func loadXMLFile
-               
-       /**
-       * Reformats the xml result array from the PhpdocXMLReader.
-       * 
-       * Every derived class must override this function to call the functions
-       * it needs to reorganize the data from the PhpdocXMLReader in a 
-       * way that it needs. 
-       *
-       * @abstract
-       * @see  $xml, $data
-       */
-       function init() {
-       } // end func init
+    /**
+    * Reformatted PhpdocXMLReader result array
+    * @var  array
+    */
+    var $data = array();
+    
+    /**
+    * Loads the specified xml file. 
+    *
+    * @param    string  Name of the xml file
+    * @return   boolean False if the given xml file was not 
+    *                   found or is empty otherwise true.
+    * @access   public
+    * @see      init()
+    */
+    function loadXMLFile($filename) {
+    
+        $this->xmlreader = new PhpdocXMLReader;
+        
+        $this->xml = $this->xmlreader->parse($filename);
+        $this->xml = $this->xml["phpdoc"];
+        $ok = (!is_array($this->xml) || 0 == count($this->xml)) ? false : true;
+        
+        $this->init();
+        
+        return $ok;        
+    } // end func loadXMLFile
+        
+    /**
+    * Reformats the xml result array from the PhpdocXMLReader.
+    * 
+    * Every derived class must override this function to call the functions
+    * it needs to reorganize the data from the PhpdocXMLReader in a 
+    * way that it needs. 
+    *
+    * @abstract
+    * @see    $xml, $data
+    */
+    function init() {
+    } // end func init
 
 } // end class PhpdocAccessor
 ?>
Index: php4/pear/PHPDoc/accessor/PhpdocClassAccessor.php
diff -u php4/pear/PHPDoc/accessor/PhpdocClassAccessor.php:1.1 
php4/pear/PHPDoc/accessor/PhpdocClassAccessor.php:1.2
--- php4/pear/PHPDoc/accessor/PhpdocClassAccessor.php:1.1       Sun Oct  8 03:03:18 
2000
+++ php4/pear/PHPDoc/accessor/PhpdocClassAccessor.php   Sun Feb 18 07:03:05 2001
@@ -2,238 +2,245 @@
 /**
 * Provides functions to access phpdoc xml documents that contain classes.
 *
-* @author              Ulf Wendel <[EMAIL PROTECTED]>
-* @version     1.0     
-* @package     PHPDoc
+* @author     Ulf Wendel <[EMAIL PROTECTED]>
+* @version    $Id: PhpdocClassAccessor.php,v 1.2 2001/02/18 15:03:05 uw Exp $
 */
 class PhpdocClassAccessor extends PhpdocDocumentAccessor {
 
-       var $xmlkey = "class";
-       
-       /**
-       * Array of inherited elements
-       * @var  array   $inherited
-       */      
-       var $inherited = array();
-       
-       /**
-       * Returns an array with the data of a class (no functions etc, just the class 
docs).
-       * @return       array   $class
-       * @access       public
-       */
-       function getClassdata() {
-               
-               $class = $this->xml["class"];
-
-               unset($class["variable"]);
-               unset($class["function"]);
-               unset($class["uses"]);
-               unset($class["constant"]);
-               unset($class["inherited"]);
-               unset($class["overriden"]);
-               unset($class["path"]);
-               
-               return $class;
-       } // end func getClassdata
-       
-       /**
-       * Returns an array of inherited functions.
-       * @return       array   
-       * @access       public
-       * @see  getInheritedVariables(), getInheritedUses(), getInheritedConstants()
-       */
-       function getInheritedFunctions() {
-               return $this->inherited["functions"];
-       } // end func getInheritedFunctions
-
-       /**
-       * Returns an array of inherited variables.
-       * @return       array
-       * @access       public
-       * @see  getInheritedFunctions(), getInheritedUses(), getInheritedConstants()
-       */      
-       function getInheritedVariables() {
-               return $this->inherited["variables"];
-       } // end func getInheritedVariables
-       
-       /**
-       * Returns an array of inherited included files.
-       * @return       array
-       * @access       public
-       * @see          getInheritedFunctions(), getInheritedUses(), 
getInheritedConstants()
-       */
-       function getInheritedUses() {
-               return $this->inherited["uses"];
-       } // end func getInheritedUses()
-       
-       /**
-       * Returns an array of inherited constants.
-       * @return       array
-       * @access       public
-       * @see          getInheritedFunctions(), getInheritedVariables(), 
getInheritedUses()
-       */
-       function getInheritedConstants() {
-               return $this->inherited["constants"];
-       } // end func getInheritedConstants
-       
-       /**
-       * Returns an array with the "path" of a class.
-       * @return array $path
-       * @access       public
-       * @see          getSubclasses()
-       */      
-       function getClasstree() {
-               
-               if (isset($this->xml["class"]["path"]))
-                       return $this->convertPath($this->xml["class"]["path"]);
-               else 
-                       return array();
-                       
-       } // end func getClasstree
-       
-       /**
-       * Returns an array with all subclasses of a class.
-       * @return       array
-       * @access       public
-       * @see          getClasstree()
-       */
-       function getSubclasses() {
-               return $this->data["subclasses"];
-       } // end func getSubclasses
-       
-
-       /**
-       * Converts a xml path array to a path that can be passed to the user.
-       * 
-       * The path is an array like path[0..n] = classname where path[0] is the 
-       * directs parent (extends path[0]) and path[n] is the baseclass.
-       *
-       * @param        array   $xmlpath
-       * @return       array   $path
-       */
-       function convertPath($xmlpath) {
-
-               $path = array();
-               
-               if (!isset($xmlpath["parent"][0])) {
-                       
-                       $path[0] = $xmlpath["parent"]["value"];         
-                               
-               } else {
-               
-                       reset($xmlpath["parent"]);
-                       while (list($k, $parent)=each($xmlpath["parent"]))
-                               $path[] = $parent["value"];
-                               
-               }
-
-               return $path;
-       } // end func convertPath
-       
-       /**
-       * Builds a list of inherited elements.
-       * @see  $inherited
-       */
-       function buildInheritedlist() {
-               
-               $this->inherited = array(
-                                                                                      
                                 "functions"     => array(),
-                                                                                      
                                 "variables"     => array(),
-                                                                                      
                                 "constants"     => array(),
-                                                                                      
                                 "uses"                  => array()
-                                                                                      
                         );
-                       
-               if (isset($this->xml["class"]["inherited"])) {
-
-                       if (isset($this->xml["class"]["inherited"][0])) {
-                       
-                               reset($this->xml["class"]["inherited"]);
-                               while (list($k, 
$inherited)=each($this->xml["class"]["inherited"])) {
-                                               
-                                       $type = $inherited["type"];
-                                       $src    = $inherited["src"];
-               
-                                       if (isset($inherited["element"][0])) {
-                                       
-                                               reset($inherited["element"]);
-                                               while (list($k2, 
$element)=each($inherited["element"])) 
-                                                       
$this->inherited[$type][$src][] = $element["value"];
-                                                       
-                                       }       else {
-                                       
-                                               $this->inherited[$type][$src][] = 
$inherited["element"]["value"];
-                                               
-                                       }
-                                       
-                               }
-                       
-                       }       else {
-                               
-                               $inherited = $this->xml["class"]["inherited"];
-                               $type                    = $inherited["type"];
-                               $src                     = $inherited["src"];
-                               
-                               if (isset($inherited["element"][0])) {
-                                       
-                                       reset($inherited["element"]);
-                                       while (list($k, 
$element)=each($inherited["element"])) 
-                                               $this->inherited[$type][$src][] = 
$element["value"];
-                                               
-                               } else {
-                               
-                                       $this->inherited[$type][$src][] = 
$inherited["element"]["value"];
-                                       
-                               }
-
-                       }
-                       
-                       unset($this->xml["class"]["inherited"]);
-                       
-               }
-                       
-       } // end func buildInheritedlist
-       
-       /**
-       * Builds a list of subclasses
-       */
-       function buildSubclasslist() {
-               
-               $this->data["subclasses"] = array();
-               
-               if (isset($this->xml["class"]["subclasses"])) {
-               
-                       if (isset($this->xml["class"]["subclasses"]["subclass"][0])) {
-
-                               reset($this->xml["class"]["subclasses"]["subclass"]);
-                               while (list($k, 
$subclass)=each($this->xml["class"]["subclasses"]["subclass"]))
-                                       $this->data["subclasses"][] = 
$subclass["value"];
-
-                       } else {
-
-                               $this->data["subclasses"][] = 
$this->xml["class"]["subclasses"]["subclass"]["value"];
-                               
-                       }
-
-               }
-               
-       } // end func buildSubclasslist
-       
-       function init() {
-
-               #$this->introspection("xml", $this->xml);
-               
-               $this->buildInheritedlist();
-               $this->buildSubclasslist();
-               
-               list($this->data["functions"], $this->data["functionsaccess"]) = 
$this->getElementlist("function");             
-               list($this->data["variables"], $this->data["variablesaccess"]) = 
$this->getElementlist("variable");
-               list($this->data["constants"], $this->data["constantsaccess"]) = 
$this->getElementlist("constant");
-               
-               $this->buildUseslist();         
-               
-               #$this->introspection("data", $this->data);
+    /**
+    * TODO: add documentation
+    */
+    var $xmlkey = "class";
+    
+    /**
+    * Array of inherited elements
+    *
+    * @var    array    $inherited
+    */    
+    var $inherited = array();
+    
+    /**
+    * Returns an array with the data of a class (no functions etc, just the class 
+docs).
+    *
+    * @return   array   $class
+    * @access   public
+    */
+    function getClassdata() {
+        
+        $class = $this->xml["class"];
+
+        unset($class["variable"]);
+        unset($class["function"]);
+        unset($class["uses"]);
+        unset($class["constant"]);
+        unset($class["inherited"]);
+        unset($class["overriden"]);
+        unset($class["path"]);
+        
+        return $class;
+    } // end func getClassdata
+    
+    /**
+    * Returns an array of inherited functions.
+    *
+    * @return   array    
+    * @access   public
+    * @see      getInheritedVariables(), getInheritedUses(), getInheritedConstants()
+    */
+    function getInheritedFunctions() {
+        return $this->inherited["functions"];
+    } // end func getInheritedFunctions
+
+    /**
+    * Returns an array of inherited variables.
+    *
+    * @return   array
+    * @access   public
+    * @see      getInheritedFunctions(), getInheritedUses(), getInheritedConstants()
+    */    
+    function getInheritedVariables() {
+        return $this->inherited["variables"];
+    } // end func getInheritedVariables
+    
+    /**
+    * Returns an array of inherited included files.
+    *
+    * @return   array
+    * @access   public
+    * @see      getInheritedFunctions(), getInheritedUses(), getInheritedConstants()
+    */
+    function getInheritedUses() {
+        return $this->inherited["uses"];
+    } // end func getInheritedUses()
+    
+    /**
+    * Returns an array of inherited constants.
+    *
+    * @return    array
+    * @access    public
+    * @see       getInheritedFunctions(), getInheritedVariables(), getInheritedUses()
+    */
+    function getInheritedConstants() {
+        return $this->inherited["constants"];
+    } // end func getInheritedConstants
+    
+    /**
+    * Returns an array with the "path" of a class.
+    *
+    * @return   array   $path
+    * @access   public
+    * @see      getSubclasses()
+    */    
+    function getClasstree() {
+        
+        if (isset($this->xml["class"]["path"]))
+            return $this->convertPath($this->xml["class"]["path"]);
+        else 
+            return array();
+            
+    } // end func getClasstree
+    
+    /**
+    * Returns an array with all subclasses of a class.
+    *
+    * @return   array
+    * @access   public
+    * @see      getClasstree()
+    */
+    function getSubclasses() {
+        return $this->data["subclasses"];
+    } // end func getSubclasses
+    
+
+    /**
+    * Converts a xml path array to a path that can be passed to the user.
+    * 
+    * The path is an array like path[0..n] = classname where path[0] is the 
+    * directs parent (extends path[0]) and path[n] is the baseclass.
+    *
+    * @param    array   $xmlpath
+    * @return   array   $path
+    */
+    function convertPath($xmlpath) {
+
+        $path = array();
+        
+        if (!isset($xmlpath["parent"][0])) {
+            
+            $path[0] = $xmlpath["parent"]["value"];        
+                
+        } else {
+        
+            reset($xmlpath["parent"]);
+            while (list($k, $parent) = each($xmlpath["parent"]))
+                $path[] = $parent["value"];
+                
+        }
+
+        return $path;
+    } // end func convertPath
+    
+    /**
+    * Builds a list of inherited elements.
+    *
+    * @see    $inherited
+    */
+    function buildInheritedlist() {
+        
+        $this->inherited = array(
+                                    "functions"    => array(),
+                                    "variables"    => array(),
+                                    "constants"    => array(),
+                                    "uses"         => array()
+                                );
+    
+        if (isset($this->xml["class"]["inherited"])) {
+
+            if (isset($this->xml["class"]["inherited"][0])) {
+            
+                reset($this->xml["class"]["inherited"]);
+                while (list($k, $inherited) = each($this->xml["class"]["inherited"])) 
+{
+                        
+                    $type   = $inherited["type"];
+                    $src    = $inherited["src"];
+        
+                    if (isset($inherited["element"][0])) {
+                    
+                        reset($inherited["element"]);
+                        while (list($k2, $element) = each($inherited["element"])) 
+                            $this->inherited[$type][$src][] = $element["value"];
+                            
+                    }    else {
+                    
+                        $this->inherited[$type][$src][] = 
+$inherited["element"]["value"];
+                        
+                    }
+                    
+                }
+            
+            }    else {
+                
+                $inherited = $this->xml["class"]["inherited"];
+                $type      = $inherited["type"];
+                $src       = $inherited["src"];
+                
+                if (isset($inherited["element"][0])) {
+                    
+                    reset($inherited["element"]);
+                    while (list($k, $element) = each($inherited["element"])) 
+                        $this->inherited[$type][$src][] = $element["value"];
+                        
+                } else {
+                
+                    $this->inherited[$type][$src][] = $inherited["element"]["value"];
+                    
+                }
+
+            }
+            
+            unset($this->xml["class"]["inherited"]);
+            
+        }
+            
+    } // end func buildInheritedlist
+    
+    /**
+    * Builds a list of subclasses
+    */
+    function buildSubclasslist() {
+        
+        $this->data["subclasses"] = array();
+        
+        if (isset($this->xml["class"]["subclasses"])) {
+        
+            if (isset($this->xml["class"]["subclasses"]["subclass"][0])) {
+
+                reset($this->xml["class"]["subclasses"]["subclass"]);
+                while (list($k, $subclass) = 
+each($this->xml["class"]["subclasses"]["subclass"]))
+                    $this->data["subclasses"][] = $subclass["value"];
+
+            } else {
+
+                $this->data["subclasses"][] = 
+$this->xml["class"]["subclasses"]["subclass"]["value"];
+                
+            }
+
+        }
+        
+    } // end func buildSubclasslist
+    
+    function init() {
+
+        $this->buildInheritedlist();
+        $this->buildSubclasslist();
+        
+        list($this->data["functions"], $this->data["functionsaccess"]) = 
+$this->getElementlist("function");        
+        list($this->data["variables"], $this->data["variablesaccess"]) = 
+$this->getElementlist("variable");
+        list($this->data["constants"], $this->data["constantsaccess"]) = 
+$this->getElementlist("constant");
+        
+        $this->buildUseslist();        
 
-       } // end func Init
-       
+    } // end func Init
+    
 } // end class PhpdocClassAccessor
 ?>
Index: php4/pear/PHPDoc/accessor/PhpdocDocumentAccessor.php
diff -u php4/pear/PHPDoc/accessor/PhpdocDocumentAccessor.php:1.2 
php4/pear/PHPDoc/accessor/PhpdocDocumentAccessor.php:1.3
--- php4/pear/PHPDoc/accessor/PhpdocDocumentAccessor.php:1.2    Sun Dec  3 13:12:27 
2000
+++ php4/pear/PHPDoc/accessor/PhpdocDocumentAccessor.php        Sun Feb 18 07:03:05 
+2001
@@ -1,249 +1,252 @@
 <?php
 /**
 * Base of the class and module accessor.
+*
+* @version  $Id: PhpdocDocumentAccessor.php,v 1.3 2001/02/18 15:03:05 uw Exp $
 */
 class PhpdocDocumentAccessor extends PhpdocAccessor {
 
-       /**
-       * Kind of top-level container in the xml document.
-       * 
-       * Must be set by all derived classes.
-       *
-       * @var  string  
-       */
-       var $xmlkey = "";
-
-       /**
-       * Returns an array with all functions.
-       *
-       * @return array $functions
-       * @access       public
-       * @see  getFunctionsByAccess()
-       */
-       function getFunctions() {
-               return $this->getElements("functions", "functionsaccess");
-       } // end func getFunctions
-       
-       /**
-       * Returns an array with all functions with a certain access (public, private) 
attribute.
-       *
-       * @param        string  Requested access attribute.
-       * @return       array   $functions
-       * @access       public
-       * @see  getFunctions()
-       */
-       function getFunctionsByAccess($access) {
-               return $this->getElementsByAccess($access, "functions", 
"functionsaccess");
-       } // end func getFunctionByAccess
-       
-       /**
-       * Returns an array with all variables.
-       *
-       * @return       array $variables
-       * @access       public
-       * @see  getVariablesByAccess()
-       */
-       function getVariables() {
-               return $this->getElements("variables", "variablesaccess");
-       } // end func getVariables
-
-       /**
-       * Returns an array with all variables with a certain access (public, private) 
attribute.
-       *
-       * @param        string  Requested access attribute.
-       * @return       array   $variables
-       * @access       public
-       * @see  getVariables()
-       */      
-       function getVariablesByAccess($access) {
-               return $this->getElementsByAccess($access, "variables", 
"variablesaccess");
-       } // end func getVariablesByAccess
-       
-       /**
-       * Returns an array of all constants.
-       *
-       * @return       array   $constants
-       * @access       public
-       * @see  getConstantsByAccess()
-       */
-       function getConstants() {
-               return $this->getElements("constants", "constantsaccess");
-       } // end func getConstants
-       
-       /**
-       * Returns an array of all constants with a certain access (public, private) 
attribute.
-       *
-       * @param        string  Requested access attribute.
-       * @return       array   $constants
-       * @see          getConstants()
-       * @access       public
-       */
-       function getConstantsByAccess($access) {
-               return $this->getElementsByAccess($access, "constants", 
"constantsaccess");
-       } // end func getConstantsByAccess
-       
-       /**
-       * Returns an array of all included files.
-       *
-       * @return       array   $uses
-       * @see          getUsesByType()
-       * @access       public
-       */
-       function getUses() {
-               return $this->getElements("uses", "usestype");
-       } // end func getUses
-
-       /**
-       * Returns an array of all included files with a certain type (include, 
require...) attribute.
-       *
-       * @param        string  Requested type: include, include_once, require, 
require_once
-       * @return       array           $uses
-       * @access       public
-       */      
-       function getUsesByType($type) {
-               
-               $data = array();
-               
-               if (!isset($this->data["usestype"][$type])) 
-                       return $data;
-                       
-               reset($this->data["usestype"][$type]);
-               while (list($k, $file)=each($this->data["usestype"][$type])) {
-               
-                       $data[$file] = $this->data["uses"][$file];
-                       if ($this->freeOnGet)
-                               unset($this->data["uses"][$file]);
-                               
-               }
-               
-               if ($this->freeOnGet)
-                       unset($this->data["usestype"][$type]);
-                       
-               return $data;
-       } // end func getUsesByType
-       
-       /**
-       * Returns elements from the internal $data array.
-       * 
-       * The object uses this function to extract functions, variables, uses and 
-       * constants from an internal array. Note that this is not a public function,
-       * future version might access internal data structures different.
-       *
-       * @param        string  Name of the element you need: functions, variables,...
-       * @param        string  Name of internal element access table
-       * @see          $data
-       */
-       function getElements($element, $elementaccess) {
-               
-               if ($this->freeOnGet) {
-                       
-                       $data = $this->data[$element];
-                       unset($this->data[$element]);
-                       unset($this->data[$elementaccess]);
-                       return $data;
-                       
-               } else {
-               
-                       $this->data[$element];
-                       
-               }
-               
-       } // end func getElements
-
-       /**
-       * Returns elements with a certain access type from the internal data.
-       * @param        string  Accesstype
-       * @param        string  element name
-       * @param        string  access type
-       * @brother      getElements()
-       */      
-       function getElementsByAccess($access, $element, $elementaccess) {
-               
-               $data = array();
-               
-               if (!isset($this->data[$elementaccess][$access]))
-                       return $data;
-               
-               reset($this->data[$elementaccess][$access]);
-               while (list($k, $name)=each($this->data[$elementaccess][$access])) {
-                       
-                       $data[$name] = $this->data[$element][$name];
-                       if ($this->freeOnGet)
-                               unset($this->data[$element][$name]);
-                               
-               }
-               
-               if ($this->freeOnGet)
-                       unset($this->data[$elementaccess][$access]);
-                       
-               return $data;
-       } // end func getElementsByAccess
-
-       /**
-       * Adds a list of included files to the internal data array.
-       */
-       function buildUseslist() {
-
-               $this->data["uses"] = array();
-               $this->data["usestype"] = array();
-               
-               if (isset($this->xml[$this->xmlkey]["uses"])) {
-
-                       if (isset($this->xml[$this->xmlkey]["uses"][0])) {             
 
-       
-                               reset($this->xml[$this->xmlkey]["uses"]);
-                               while (list($k, 
$data)=each($this->xml[$this->xmlkey]["uses"])) {
-                                       $this->data["uses"][$data["file"]] = $data;
-                                       $this->data["usestype"][$data["type"]][] = 
$data["file"];
-                               } 
-                               
-                       } else {
-                       
-                               $data = $this->xml[$this->xmlkey]["uses"];
-                               $this->data["uses"][$data["file"]] = $data;
-                               $this->data["usestype"][$data["type"]][] = 
$data["file"];
-
-                       }
-                       
-                       unset($this->xml[$this->xmlkey]["uses"]);                      
 
-               }
-               
-       } // end func buildUseslist
-       
-       /**
-       * Adds a list of a certain element to the internal data array.
-       *
-       * @param        string  name of the element to add: function, variable, 
constant.
-       */
-       function getElementlist($element) {
-       
-               $elements = array();
-               $elementaccess = array();
-               
-               if (isset($this->xml[$this->xmlkey][$element])) {
-                                                                                      
                                 
-                       if (isset($this->xml[$this->xmlkey][$element][0])) {
-
-                               reset($this->xml[$this->xmlkey][$element]);
-                               while (list($k, 
$data)=each($this->xml[$this->xmlkey][$element])) {
-                                       $elements[$data["name"]] = $data;
-                                       $elementaccess[$data["access"]][] = 
$data["name"];      
-                               }       
-                               
-                       } else {
-                               
-                               $data = $this->xml[$this->xmlkey][$element];
-                               $elements[$data["name"]] = $data;
-                               $elementaccess[$data["access"]][] = $data["name"];
-                               
-                       }
-                       
-                       unset($this->xml[$this->xmlkey][$element]);
-                       
-               }
-               
-               return array($elements, $elementaccess);
-       } // end func getElementlist
+    /**
+    * Kind of top-level container in the xml document.
+    * 
+    * Must be set by all derived classes.
+    *
+    * @var  string    
+    */
+    var $xmlkey = "";
+
+    /**
+    * Returns an array with all functions.
+    *
+    * @return   array   $functions
+    * @access   public
+    * @see      getFunctionsByAccess()
+    */
+    function getFunctions() {
+        return $this->getElements("functions", "functionsaccess");
+    } // end func getFunctions
+    
+    /**
+    * Returns an array with all functions with a certain access (public, private) 
+attribute.
+    *
+    * @param    string  Requested access attribute.
+    * @return   array   $functions
+    * @access   public
+    * @see      getFunctions()
+    */
+    function getFunctionsByAccess($access) {
+        return $this->getElementsByAccess($access, "functions", "functionsaccess");
+    } // end func getFunctionByAccess
+    
+    /**
+    * Returns an array with all variables.
+    *
+    * @return   array   $variables
+    * @access   public
+    * @see      getVariablesByAccess()
+    */
+    function getVariables() {
+        return $this->getElements("variables", "variablesaccess");
+    } // end func getVariables
+
+    /**
+    * Returns an array with all variables with a certain access (public, private) 
+attribute.
+    *
+    * @param    string   Requested access attribute.
+    * @return   array    $variables
+    * @access   public
+    * @see      getVariables()
+    */    
+    function getVariablesByAccess($access) {
+        return $this->getElementsByAccess($access, "variables", "variablesaccess");
+    } // end func getVariablesByAccess
+    
+    /**
+    * Returns an array of all constants.
+    *
+    * @return   array   $constants
+    * @access   public
+    * @see      getConstantsByAccess()
+    */
+    function getConstants() {
+        return $this->getElements("constants", "constantsaccess");
+    } // end func getConstants
+    
+    /**
+    * Returns an array of all constants with a certain access (public, private) 
+attribute.
+    *
+    * @param    string  Requested access attribute.
+    * @return   array   $constants
+    * @see      getConstants()
+    * @access   public
+    */
+    function getConstantsByAccess($access) {
+        return $this->getElementsByAccess($access, "constants", "constantsaccess");
+    } // end func getConstantsByAccess
+    
+    /**
+    * Returns an array of all included files.
+    *
+    * @return   array    $uses
+    * @see      getUsesByType()
+    * @access   public
+    */
+    function getUses() {
+        return $this->getElements("uses", "usestype");
+    } // end func getUses
+
+    /**
+    * Returns an array of all included files with a certain type (include, 
+require...) attribute.
+    *
+    * @param    string  Requested type: include, include_once, require, require_once
+    * @return   array   $uses
+    * @access   public
+    */    
+    function getUsesByType($type) {
+        
+        $data = array();
+        
+        if (!isset($this->data["usestype"][$type])) 
+            return $data;
+            
+        reset($this->data["usestype"][$type]);
+        while (list($k, $file) = each($this->data["usestype"][$type])) {
+        
+            $data[$file] = $this->data["uses"][$file];
+            if ($this->freeOnGet)
+                unset($this->data["uses"][$file]);
+                
+        }
+        
+        if ($this->freeOnGet)
+            unset($this->data["usestype"][$type]);
+            
+        return $data;
+    } // end func getUsesByType
+    
+    /**
+    * Returns elements from the internal $data array.
+    * 
+    * The object uses this function to extract functions, variables, uses and 
+    * constants from an internal array. Note that this is not a public function,
+    * future version might access internal data structures different.
+    *
+    * @param    string  Name of the element you need: functions, variables,...
+    * @param    string  Name of internal element access table
+    * @see      $data
+    */
+    function getElements($element, $elementaccess) {
+        
+        if ($this->freeOnGet) {
+            
+            $data = $this->data[$element];
+            unset($this->data[$element]);
+            unset($this->data[$elementaccess]);
+            return $data;
+            
+        } else {
+        
+            $this->data[$element];
+            
+        }
+        
+    } // end func getElements
+
+    /**
+    * Returns elements with a certain access type from the internal data.
+    *
+    * @param    string  Accesstype
+    * @param    string  element name
+    * @param    string  access type
+    * @brother  getElements()
+    */    
+    function getElementsByAccess($access, $element, $elementaccess) {
+        
+        $data = array();
+        
+        if (!isset($this->data[$elementaccess][$access]))
+            return $data;
+        
+        reset($this->data[$elementaccess][$access]);
+        while (list($k, $name) = each($this->data[$elementaccess][$access])) {
+            
+            $data[$name] = $this->data[$element][$name];
+            if ($this->freeOnGet)
+                unset($this->data[$element][$name]);
+                
+        }
+        
+        if ($this->freeOnGet)
+            unset($this->data[$elementaccess][$access]);
+            
+        return $data;
+    } // end func getElementsByAccess
+
+    /**
+    * Adds a list of included files to the internal data array.
+    */
+    function buildUseslist() {
+
+        $this->data["uses"] = array();
+        $this->data["usestype"] = array();
+        
+        if (isset($this->xml[$this->xmlkey]["uses"])) {
+
+            if (isset($this->xml[$this->xmlkey]["uses"][0])) {        
+    
+                reset($this->xml[$this->xmlkey]["uses"]);
+                while (list($k, $data) = each($this->xml[$this->xmlkey]["uses"])) {
+                    $this->data["uses"][$data["file"]] = $data;
+                    $this->data["usestype"][$data["type"]][] = $data["file"];
+                } 
+                
+            } else {
+            
+                $data = $this->xml[$this->xmlkey]["uses"];
+                $this->data["uses"][$data["file"]] = $data;
+                $this->data["usestype"][$data["type"]][] = $data["file"];
+
+            }
+            
+            unset($this->xml[$this->xmlkey]["uses"]);            
+        }
+        
+    } // end func buildUseslist
+    
+    /**
+    * Adds a list of a certain element to the internal data array.
+    *
+    * @param    string  name of the element to add: function, variable, constant.
+    */
+    function getElementlist($element) {
+    
+        $elements = array();
+        $elementaccess = array();
+        
+        if (isset($this->xml[$this->xmlkey][$element])) {
+                                                            
+            if (isset($this->xml[$this->xmlkey][$element][0])) {
+
+                reset($this->xml[$this->xmlkey][$element]);
+                while (list($k, $data) = each($this->xml[$this->xmlkey][$element])) {
+                    $elements[$data["name"]] = $data;
+                    $elementaccess[$data["access"]][] = $data["name"];    
+                }    
+                
+            } else {
+                
+                $data = $this->xml[$this->xmlkey][$element];
+                $elements[$data["name"]] = $data;
+                $elementaccess[$data["access"]][] = $data["name"];
+                
+            }
+            
+            unset($this->xml[$this->xmlkey][$element]);
+            
+        }
+        
+        return array($elements, $elementaccess);
+    } // end func getElementlist
 
 } // end class PhpdocDocumentAccessor
 ?>
Index: php4/pear/PHPDoc/accessor/PhpdocIndexAccessor.php
diff -u php4/pear/PHPDoc/accessor/PhpdocIndexAccessor.php:1.2 
php4/pear/PHPDoc/accessor/PhpdocIndexAccessor.php:1.3
--- php4/pear/PHPDoc/accessor/PhpdocIndexAccessor.php:1.2       Sun Dec  3 13:12:27 
2000
+++ php4/pear/PHPDoc/accessor/PhpdocIndexAccessor.php   Sun Feb 18 07:03:05 2001
@@ -4,356 +4,357 @@
 */
 class PhpdocIndexAccessor extends PhpdocAccessor {
 
-       /**
-       * Ordered list of all chapternames.
-       *
-       * @var  array
-       */
-       var $chapternames = array();
-       
-       /**
-       * Ordered list of all chapters.
-       *
-       * @var  array
-       */
-       var $chapters = array();
-       
-       /**
-       * List of all packages.
-       *
-       * @var  array
-       */
-       var $packages = array();
-       
-       /**
-       * Data of a classtree
-       *
-       * @var  array
-       */
-       var $classtree = array();
-       
-       /**
-       * Data of a modulegroup
-       *
-       * @var  array
-       */
-       var $modulegroup = array();
-       
-       /**
-       * Some container withing the packagelist.
-       *
-       * @var array
-       * @see  buildPackagelist()
-       */
-       var $packageFields = array("class", "module");
-       
-       /**
-       * Flag indicating that certain internal datafield have been filled.
-       *
-       * @var  array
-       */
-       var $flagBuild = array(
-                                                                                      
         "chapter"               => false,
-                                                                                      
         "package"               => false
-                                                                                      
 );
+    /**
+    * Ordered list of all chapternames.
+    *
+    * @var  array
+    */
+    var $chapternames = array();
+    
+    /**
+    * Ordered list of all chapters.
+    *
+    * @var  array
+    */
+    var $chapters = array();
+    
+    /**
+    * List of all packages.
+    *
+    * @var  array
+    */
+    var $packages = array();
+    
+    /**
+    * Data of a classtree
+    *
+    * @var    array
+    */
+    var $classtree = array();
+    
+    /**
+    * Data of a modulegroup
+    *
+    * @var  array
+    */
+    var $modulegroup = array();
+    
+    /**
+    * Some container withing the packagelist.
+    *
+    * @var  array
+    * @see  buildPackagelist()
+    */
+    var $packageFields = array("class", "module");
+    
+    /**
+    * Flag indicating that certain internal datafield have been filled.
+    *
+    * @var  array
+    */
+    var $flagBuild = array(
+                            "chapter"        => false,
+                            "package"        => false
+                        );
 
 
-       /**
-       * Returns a modulegroup
-       * 
-       * @access       public
-       */
-       function getModulegroup() {
-               
-               $this->buildModulegroup();
-               
-               if ($this->freeOnGet) {
-                       
-                       $data = $this->modulegroup;
-                       $this->modulegroup = array();
-                       return $data;
-                       
-               } else {
-               
-                       return $this->modulegroup;
-               }
-               
-       } // end func getModulegroup
-                                                                                      
         
-       /**
-       * Returns a classtree.
-       *
-       * @return       array
-       * @access       public
-       */              
-       function getClasstree() {
+    /**
+    * Returns a modulegroup
+    * 
+    * @access   public
+    */
+    function getModulegroup() {
+        
+        $this->buildModulegroup();
+        
+        if ($this->freeOnGet) {
+            
+            $data = $this->modulegroup;
+            $this->modulegroup = array();
+            return $data;
+            
+        } else {
+        
+            return $this->modulegroup;
+        }
+        
+    } // end func getModulegroup
+                                                
+    /**
+    * Returns a classtree.
+    *
+    * @return   array
+    * @access   public
+    */        
+    function getClasstree() {
 
-               $this->buildClasstree();
-               
-               if ($this->freeOnGet) {
-               
-                       $data = $this->classtree;
-                       $this->classtree = array();
-                       return $data;
-                       
-               } else {
-                       
-                       return $this->classtree;
-                       
-               }
-               
-       } // end func getClasstree
-       
-       /**
-       * Returns an ordered list of all chapternames.
-       * 
-       * @return       array
-       * @access       public
-       * @see  getChapters()
-       */
-       function getChapternames() {
-       
-               $this->buildChapterlist();
-               
-               if ($this->freeOnGet) {
-               
-                       $data = $this->chapternames;
-                       $this->chapternames = array();
-                       return $data;
-                       
-               } else {
-               
-                       return $this->chapternames;
-                       
-               }
-               
-       } // end func getChapternames
-       
-       /**
-       * Returns an ordered list of all chapters.
-       * 
-       * @return array
-       * @access       public
-       * @see  getChapternames()
-       */
-       function getChapters() {
-       
-               $this->buildChapterlist();
-               
-               if ($this->freeOnGet) {
-                       
-                       $data = $this->chapters;
-                       $this->chapters = array();
-                       return $data;
-                               
-               } else {
-               
-                       return $this->chapters;
-                       
-               }
-               
-       } // end func getChapters
-       
-       /**
-       * Returns a list of all packages
-       *
-       * @return       array
-       * @access       public
-       */
-       function getPackagelist() {
-       
-               $this->buildPackagelist();
+        $this->buildClasstree();
+        
+        if ($this->freeOnGet) {
+        
+            $data = $this->classtree;
+            $this->classtree = array();
+            return $data;
+            
+        } else {
+            
+            return $this->classtree;
+            
+        }
+        
+    } // end func getClasstree
+    
+    /**
+    * Returns an ordered list of all chapternames.
+    * 
+    * @return   array
+    * @access   public
+    * @see      getChapters()
+    */
+    function getChapternames() {
+    
+        $this->buildChapterlist();
+        
+        if ($this->freeOnGet) {
+        
+            $data = $this->chapternames;
+            $this->chapternames = array();
+            return $data;
+            
+        } else {
+        
+            return $this->chapternames;
+            
+        }
+        
+    } // end func getChapternames
+    
+    /**
+    * Returns an ordered list of all chapters.
+    * 
+    * @return   array
+    * @access   public
+    * @see      getChapternames()
+    */
+    function getChapters() {
+    
+        $this->buildChapterlist();
+        
+        if ($this->freeOnGet) {
+            
+            $data = $this->chapters;
+            $this->chapters = array();
+            return $data;
+                
+        } else {
+        
+            return $this->chapters;
+            
+        }
+        
+    } // end func getChapters
+    
+    /**
+    * Returns a list of all packages
+    *
+    * @return   array
+    * @access   public
+    */
+    function getPackagelist() {
+    
+        $this->buildPackagelist();
 
-               if ($this->freeOnGet) {
-                       
-                       $data = $this->packages;
-                       $this->packages = array();
-                       return $data;
-                       
-               } else {
-                       
-                       return $this->packages;
-                       
-               }
-               
-       } // end func getPackagelist
-       
-       
-       /**
-       * Builds the internal packagelist.
-       */
-       function buildPackagelist() {
-       
-               if ($this->flagBuild["package"])
-                       return;
-               
-               $data = $this->xml["packagelist"];
-               $this->xml = array();
-               $this->flagBuild["package"] = true;
-               
-               $this->packages = array();
-               
-               if (!isset($data["package"][0]))
-                       $data["package"] = array($data["package"]);
-                       
-               reset($data["package"]);
-               while (list($k, $package)=each($data["package"])) {
-                       
-                       $packagename = $package["name"];
-                       
-                       reset($this->packageFields);
-                       while (list($k, $field)=each($this->packageFields)) {
-                               
-                               if (isset($package[$field][0])) {
-                                       
-                                       reset($package[$field]);
-                                       while (list($k, 
$element)=each($package[$field]))
-                                               
$this->packages[$packagename][$field][] = $element["name"];
-                                        
-                               } else if (isset($package[$field])) {
-                                       
-                                       $this->packages[$packagename][$field][] = 
$package[$field]["name"];
-                                       
-                               }
-                       }
-                       
-               }
-               
-       } // end func buildPackagelist
-       
-       /**
-       * Builds the internal chapterlists. 
-       */
-       function buildChapterlist() {
-       
-               if ($this->flagBuild["chapter"])
-                       return;
-                       
-               $data = $this->xml["index"];
-               $this->xml = array();
-               $this->flagBuild["chapter"] = true;
+        if ($this->freeOnGet) {
+            
+            $data = $this->packages;
+            $this->packages = array();
+            return $data;
+            
+        } else {
+            
+            return $this->packages;
+            
+        }
+        
+    } // end func getPackagelist
+    
+    
+    /**
+    * Builds the internal packagelist.
+    */
+    function buildPackagelist() {
+    
+        if ($this->flagBuild["package"])
+            return;
+        
+        $data = $this->xml["packagelist"];
+        $this->xml = array();
+        $this->flagBuild["package"] = true;
+        
+        $this->packages = array();
+        
+        if (!isset($data["package"][0]))
+            $data["package"] = array($data["package"]);
+            
+        reset($data["package"]);
+        while (list($k, $package) = each($data["package"])) {
+            
+            $packagename = $package["name"];
+            
+            reset($this->packageFields);
+            while (list($k, $field) = each($this->packageFields)) {
+                
+                if (isset($package[$field][0])) {
+                    
+                    reset($package[$field]);
+                    while (list($k, $element)=each($package[$field]))
+                        $this->packages[$packagename][$field][] = $element["name"];
+                     
+                } else if (isset($package[$field])) {
+                    
+                    $this->packages[$packagename][$field][] = 
+$package[$field]["name"];
+                    
+                }
+            }
+            
+        }
+        
+    } // end func buildPackagelist
+    
+    /**
+    * Builds the internal chapterlists. 
+    */
+    function buildChapterlist() {
+    
+        if ($this->flagBuild["chapter"])
+            return;
+            
+        $data = $this->xml["index"];
+        $this->xml = array();
+        $this->flagBuild["chapter"] = true;
 
-               $this->chapternames = array();
-               $this->chapters = array();
-               
-               if (isset($data["chapter"][0])) {
-                       
-                       $chapterlist = array();
-                       reset($data["chapter"]);
-                       while (list($k, $chapter)=each($data["chapter"])) 
-                               
$chapterlist[strtoupper($chapter["char"])][$chapter["char"]] = $k;
-                               
-                       ksort($chapterlist, SORT_STRING);
-                       
-                       reset($chapterlist);
-                       while (list($k, $chapters)=each($chapterlist)) {
-                       
-                               reset($chapters);
-                               while (list($chapter, $index)=each($chapters)) {
-                                       $this->chapternames[] = $chapter;
-                                       $this->chapters[$chapter] = 
$data["chapter"][$index];
-                               }
-                                                                       
-                       }
-                       
-               } else {
-                       
-                       $this->chapternames[] = $data["chapter"]["char"];
-                       $this->chapters[$data["chapter"]["char"]] = 
$data["chapter"]["char"];
-                       
-               }
-               
-       } // end func buildChapterlist
+        $this->chapternames = array();
+        $this->chapters = array();
+        
+        if (isset($data["chapter"][0])) {
+            
+            $chapterlist = array();
+            reset($data["chapter"]);
+            while (list($k, $chapter) = each($data["chapter"])) 
+                $chapterlist[strtoupper($chapter["char"])][$chapter["char"]] = $k;
+                
+            ksort($chapterlist, SORT_STRING);
+            
+            reset($chapterlist);
+            while (list($k, $chapters) = each($chapterlist)) {
+            
+                reset($chapters);
+                while (list($chapter, $index)=each($chapters)) {
+                    $this->chapternames[] = $chapter;
+                    $this->chapters[$chapter] = $data["chapter"][$index];
+                }
+                                    
+            }
+            
+        } else {
+            
+            $this->chapternames[] = $data["chapter"]["char"];
+            $this->chapters[$data["chapter"]["char"]] = $data["chapter"]["char"];
+            
+        }
+        
+    } // end func buildChapterlist
 
-       /**
-       * Extracts the modulegroup data of the xml file.
-       * 
-       * @see  getModulegroup()
-       */
-       function buildModulegroup() {
-               
-               if ($this->flagBuild["modulegroup"])
-                       return;
-                       
-               $this->flagBuild["modulegroup"] = true;
-               $data = $this->xml["modulegroup"];
-               
-               $this->xml = "";
-               $this->modulegroup = array(
-                                                                                      
                                         "group"         => $data["name"],
-                                                                                      
                                         "modules"       => array()
-                                                                                      
                                 );
-               
-               if (!isset($data["module"][0]))
-                       $data["module"] = array( $data["module"] );
-               
-               reset($data["module"]);
-               while (list($k, $module)=each($data["module"]))
-                       $this->modulegroup["modules"][] = $module["name"];
-                       
-       } // end func buildModulegroup
-       
-       /**
-       * Extracts the classtree data of the xml file. 
-       *
-       * @see  getClasstree()
-       */      
-       function buildClasstree() {
-       
-               if ($this->flagBuild["classtree"])
-                       return;
-                       
-               $this->flagBuild["classtree"] = true;
-               $data = $this->xml["classtree"];
-               $this->xml = "";
-               
-               $this->classtree = array( 
-                                                                                      
                                 "baseclass"     => $data["baseclass"], 
-                                                                                      
                                 "classes"       => array()
-                                                                                      
                         );
-                                                                                      
                         
-               if (!isset($data["class"][0]))
-                       $data["class"] = array( $data["class"] );
+    /**
+    * Extracts the modulegroup data of the xml file.
+    * 
+    * @see  getModulegroup()
+    */
+    function buildModulegroup() {
+        
+        if ($this->flagBuild["modulegroup"])
+            return;
+            
+        $this->flagBuild["modulegroup"] = true;
+        $data = $this->xml["modulegroup"];
+        
+        $this->xml = "";
+        $this->modulegroup = array(
+                                    "group"        => $data["name"],
+                                    "modules"    => array()
+                                );
+        
+        if (!isset($data["module"][0]))
+            $data["module"] = array( $data["module"] );
+        
+        reset($data["module"]);
+        while (list($k, $module) = each($data["module"]))
+            $this->modulegroup["modules"][] = $module["name"];
+            
+    } // end func buildModulegroup
+    
+    /**
+    * Extracts the classtree data of the xml file. 
+    *
+    * @see  getClasstree()
+    */    
+    function buildClasstree() {
+    
+        if ($this->flagBuild["classtree"])
+            return;
+            
+        $this->flagBuild["classtree"] = true;
+        $data = $this->xml["classtree"];
+        $this->xml = "";
+        
+        $this->classtree = array( 
+                                "baseclass"    => $data["baseclass"], 
+                                "classes"     => array()
+                            );
+                                                        
+        if (!isset($data["class"][0]))
+            $data["class"] = array( $data["class"] );
 
-               reset($data["class"]);
-               while (list($k, $class)=each($data["class"])) {
-                       
-                       if (!isset($class["subclass"])) {
-                       
-                               $this->classtree["classes"][$class["name"]] = array(); 
                         
-                               
-                       } else {
-                               
-                               if (!isset($class["subclass"][0])) {
-                               
-                                       $this->classtree["classes"][$class["name"]][] 
= $class["subclass"]["value"];
-                                       
-                               } else {
-                               
-                                       reset($class["subclass"]);
-                                       while (list($k, 
$subclass)=each($class["subclass"]))
-                                               
$this->classtree["classes"][$class["name"]][] = $subclass["value"];
-                                               
-                               }
-                               
-                       }
-                       
-               }
-               
-       } // end func buildClasstree
-       
-       /**
-       * Resets the build flags.
-       * @see  $flagBuild
-       */                                                                             
         
-       function init() {
-               
-               reset($this->flagBuild);
-               while (list($k, $v)=each($this->flagBuild))
-                       $this->flagBuild[$k] = false;
-                       
-       } // end func init
+        reset($data["class"]);
+        while (list($k, $class)=each($data["class"])) {
+            
+            if (!isset($class["subclass"])) {
+            
+                $this->classtree["classes"][$class["name"]] = array();                
+                
+            } else {
+                
+                if (!isset($class["subclass"][0])) {
+                
+                    $this->classtree["classes"][$class["name"]][] = 
+$class["subclass"]["value"];
+                    
+                } else {
+                
+                    reset($class["subclass"]);
+                    while (list($k, $subclass)=each($class["subclass"]))
+                        $this->classtree["classes"][$class["name"]][] = 
+$subclass["value"];
+                        
+                }
+                
+            }
+            
+        }
+        
+    } // end func buildClasstree
+    
+    /**
+    * Resets the build flags.
+    *
+    * @see    $flagBuild
+    */                                            
+    function init() {
+        
+        reset($this->flagBuild);
+        while (list($k, $v) = each($this->flagBuild))
+            $this->flagBuild[$k] = false;
+            
+    } // end func init
 
-       
+    
 } // end class PhpdocIndexAccessor
 ?>
Index: php4/pear/PHPDoc/accessor/PhpdocModuleAccessor.php
diff -u php4/pear/PHPDoc/accessor/PhpdocModuleAccessor.php:1.1 
php4/pear/PHPDoc/accessor/PhpdocModuleAccessor.php:1.2
--- php4/pear/PHPDoc/accessor/PhpdocModuleAccessor.php:1.1      Sun Oct  8 03:03:18 
2000
+++ php4/pear/PHPDoc/accessor/PhpdocModuleAccessor.php  Sun Feb 18 07:03:05 2001
@@ -1,35 +1,38 @@
 <?php
 /**
 * Provides functions to access phpdoc xml documents that contain modules.
+*
+* @version  $Id: PhpdocModuleAccessor.php,v 1.2 2001/02/18 15:03:05 uw Exp $
 */
 class PhpdocModuleAccessor extends PhpdocDocumentAccessor {
-       
-       var $xmlkey = "module";
-       
-       /**
-       * Returns an array with the data of a module (no functions etc, just the 
module docs).
-       * @return       array   $class
-       * @access       public
-       */
-       function getModuledata() {
-               
-               $module = $this->xml["module"];
+    
+    var $xmlkey = "module";
+    
+    /**
+    * Returns an array with the data of a module (no functions etc, just the module 
+docs).
+    *
+    * @return   array   $class
+    * @access   public
+    */
+    function getModuledata() {
+        
+        $module = $this->xml["module"];
 
-               unset($module["function"]);
-               unset($module["uses"]);
-               unset($module["constant"]);
-               
-               return $module;
-       } // end func getModuledata
-       
-       function init() {
+        unset($module["function"]);
+        unset($module["uses"]);
+        unset($module["constant"]);
+        
+        return $module;
+    } // end func getModuledata
+    
+    function init() {
 
-               list($this->data["functions"], $this->data["functionsaccess"]) = 
$this->getElementlist("function");             
-               list($this->data["variables"], $this->data["variablesaccess"]) = 
$this->getElementlist("variable");
-               list($this->data["constants"], $this->data["constantsaccess"]) = 
$this->getElementlist("constant");
-               $this->buildUseslist();         
+        list($this->data["functions"], $this->data["functionsaccess"]) = 
+$this->getElementlist("function");        
+        list($this->data["variables"], $this->data["variablesaccess"]) = 
+$this->getElementlist("variable");
+        list($this->data["constants"], $this->data["constantsaccess"]) = 
+$this->getElementlist("constant");
+        $this->buildUseslist();        
 
-       } // end func Init
-       
+    } // end func Init
+    
 } // end class PhpdocModuleAccessor
 ?>
Index: php4/pear/PHPDoc/accessor/PhpdocWarningAccessor.php
diff -u php4/pear/PHPDoc/accessor/PhpdocWarningAccessor.php:1.1 
php4/pear/PHPDoc/accessor/PhpdocWarningAccessor.php:1.2
--- php4/pear/PHPDoc/accessor/PhpdocWarningAccessor.php:1.1     Sun Oct  8 03:03:18 
2000
+++ php4/pear/PHPDoc/accessor/PhpdocWarningAccessor.php Sun Feb 18 07:03:05 2001
@@ -2,88 +2,92 @@
 /**
 * Extracts the warnings from PHPDoc warnings_* files.
 * 
+* @version  $Id: PhpdocWarningAccessor.php,v 1.2 2001/02/18 15:03:05 uw Exp $
 */
 class PhpdocWarningAccessor extends PhpdocAccessor {
 
-       /**
-       * If set to true all get_xy() functions will free their resources.
-       * @var          boolean
-       * @access       public
-       */
-       var $freeOnGet = true;  
-       
-       /**
-       * Array of warnings.
-       * @var  array
-       */
-       var $warnings = array();
-       
-       /**
-       * Flag used to detect if get_xy() was called.s
-       * @var  boolean
-       */
-       var $flag_build = false;
-       
-       /**
-       * Returns a hash of warnings in of the given XML file.
-       *
-       * @param        string  XML file
-       * @return       array
-       * @access       public
-       * @see  $freeOnGet
-       */
-       function getWarnings($xmlfile) {
-               
-               $this->buildWarnings($xmlfile);
-               
-               if ($this->freeOnGet) {
-                       
-                       $data = $this->warnings; 
-                       $this->warnings = array();
-                       return $data;
-                       
-               } else {
-                       
-                       return $this->warnings;
-                       
-               }
-               
-       } // end func getWarnings
-       
-       /**
-       * Build the internal list of warnings.
-       *
-       * @param        string  XML file to load
-       */
-       function buildWarnings($xmlfile) {
-               
-               if ($this->flag_build)
-                       return;
-                       
-               $this->flag_build = true;
-               $this->warnings         = array();
-               $this->loadXMLFile($xmlfile);
+    /**
+    * If set to true all get_xy() functions will free their resources.
+    *
+    * @var      boolean
+    * @access   public
+    */
+    var $freeOnGet = true;    
+    
+    /**
+    * Array of warnings.
+    *
+    * @var      array
+    */
+    var $warnings = array();
+    
+    /**
+    * Flag used to detect if get_xy() was called.
+    *
+    * @var      boolean
+    */
+    var $flag_build = false;
+    
+    /**
+    * Returns a hash of warnings in of the given XML file.
+    *
+    * @param    string  XML file
+    * @return   array
+    * @access   public
+    * @see      $freeOnGet
+    */
+    function getWarnings($xmlfile) {
+        
+        $this->buildWarnings($xmlfile);
+        
+        if ($this->freeOnGet) {
+            
+            $data = $this->warnings; 
+            $this->warnings = array();
+            return $data;
+            
+        } else {
+            
+            return $this->warnings;
+            
+        }
+        
+    } // end func getWarnings
+    
+    /**
+    * Build the internal list of warnings.
+    *
+    * @param    string  XML file to load
+    */
+    function buildWarnings($xmlfile) {
+        
+        if ($this->flag_build)
+            return;
+            
+        $this->flag_build = true;
+        $this->warnings        = array();
+        $this->loadXMLFile($xmlfile);
 
-               if(!isset($this->xml["warnings"][0]))
-                       $this->xml["warnings"] = array( $this->xml["warnings"] );
-               
-               reset($this->xml["warnings"]);
-               while (list($k, $warnings)=each($this->xml["warnings"])) {
-               
-                       $file = $warnings["file"];
-                       if (!isset($warnings["warning"][0])) 
-                               $warnings["warning"] = array($warnings["warning"]);
-                       $this->warnings[$file] = $warnings["warning"];
-                                       
-               }
+        if(!isset($this->xml["warnings"][0]))
+            $this->xml["warnings"] = array( $this->xml["warnings"] );
+        
+        reset($this->xml["warnings"]);
+        while (list($k, $warnings) = each($this->xml["warnings"])) {
+        
+            $file = $warnings["file"];
+            if (!isset($warnings["warning"][0])) 
+                $warnings["warning"] = array($warnings["warning"]);
+            $this->warnings[$file] = $warnings["warning"];
+                    
+        }
 
-               $this->xml = "";
-               
-       } // end func buildWarnings
-       
-       function init() {
-               $this->flag_build = false;
-       } // end func init
-       
+        $this->xml = "";
+        
+    } // end func buildWarnings
+    
+    function init() {
+        $this->flag_build = false;
+    } // end func init
+    
 } // end class PhpdocWarningAccess
 ?>

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to