<commit_before><?php
/**
 * File containing the ezcTreeNode class.
 *
 * @copyright Copyright (C) 2005-2007 eZ systems as. All rights reserved.
 * @license http://ez.no/licenses/new_bsd New BSD License
 * @version //autogentag//
 * @filesource
 * @package Tree
 */

/**
 * ezcTreeNode represents a node in a tree.
 *
 * The methods that operate on nodes (fetchChildren, fetchPath, ...,
 * isSiblingOf) are all marshalled to calls on the tree (that is stored in the
 * $tree private variable) itself. 
 *
 * Example:
 * <code>
 * <?php
 *     // Creates a new node with ID 'O' and as data 'Oxygen'
 *     $node = new ezcTreeNode( $this->tree, 'O', 'Oxygen' );
 * 
 *     // Adds a node as child element to another already create node in a tree
 *     $parentNode->addChild( $node );
 * ?>
 * </code>
 *
 * @property-read string  $id          The ID that uniquely identifies a node
 * @property-read ezcTree $tree        The tree object that this node belongs to
 * @property      mixed   $data        The data belonging to a node
 * @property      bool    $dataFetched Whether the data for this node has been
 *                                     fetched. Should *only* be modified by
 *                                     data store implementations.
 * @property      bool    $dataStored  Whether the data for this node has been
 *                                     stored. Should *only* be modified by
 *                                     data store implementations.
 *
 * @package Tree
 * @version //autogentag//
 * @mainclass
 */
class ezcTreeNode implements ezcTreeVisitable
{
    /**
     * Holds the properties of this class.<commit_msg>- Added some extra comments.<commit_after><?php
/**
 * File containing the ezcTreeNode class.
 *
 * @copyright Copyright (C) 2005-2007 eZ systems as. All rights reserved.
 * @license http://ez.no/licenses/new_bsd New BSD License
 * @version //autogentag//
 * @filesource
 * @package Tree
 */

/**
 * ezcTreeNode represents a node in a tree.
 *
 * The methods that operate on nodes (fetchChildren, fetchPath, ...,
 * isSiblingOf) are all marshalled to calls on the tree (that is stored in the
 * $tree private variable) itself. 
 *
 * Example:
 * <code>
 * <?php
 *     // Creates a new node with ID 'O' and as data 'Oxygen'
 *     $node = new ezcTreeNode( $this->tree, 'O', 'Oxygen' );
 * 
 *     // Adds a node as child element to another already create node in a tree
 *     $parentNode->addChild( $node );
 * ?>
 * </code>
 *
 * To use your own implementation of tree nodes, you can override the class
 * that is used by the tree by setting the nodeClassName property of the
 * ezcTree class. The class must inherit from this class though.
 *
 * @property-read string  $id          The ID that uniquely identifies a node
 * @property-read ezcTree $tree        The tree object that this node belongs to
 * @property      mixed   $data        The data belonging to a node
 * @property      bool    $dataFetched Whether the data for this node has been
 *                                     fetched. Should *only* be modified by
 *                                     data store implementations.
 * @property      bool    $dataStored  Whether the data for this node has been
 *                                     stored. Should *only* be modified by
 *                                     data store implementations.
 *
 * @package Tree
 * @version //autogentag//
 * @mainclass
 */
class ezcTreeNode implements ezcTreeVisitable
{
    /**
     * Holds the properties of this class.
{'fraction_non_alphanumeric': 0.09206798866855524, 'fraction_numerical': 0.004532577903682719, 'mean_word_length': 2.166816143497758, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 13, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 12, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2801753', 'n_tokens_mistral': 990, 'n_tokens_neox': 942, 'n_words': 401}