™.. Data::Grove::Parent - Online Linux Manual PageSection : 3
Updated : 2003-10-21
Source : perl v5.10.1
Note : User Contributed Perl Documentation

NAMEData::Grove::Parent − provide parent properties to Data::Grove objects

SYNOPSIS​ use Data::Grove::Parent; ​ ​ $root = $object−>root; ​ $rootpath = $object−>rootpath; ​ $tied = $object−>add_magic([ $parent ]); ​ ​ $node = Data::Grove::Parent−>new($hash [, $parent]); ​ $node_list = Data::Grove::ParentList−>new($array [, $parent]);

DESCRIPTIONData::Grove::Parent is an extension to Data::Grove that adds `\*(C`Parent\*(C'\fR' and `\f(CW\*(C`Raw\*(C'\fR' properties to Data::Grove objects and methods for returning the root node of a grove, a list of nodes between and including the root node and the current node, and a method that creates parented nodes. Data::Grove::Parent works by creating a Perl ``tied'' object that contains a parent reference (`\*(C`Parent\*(C'\fR') and a reference to the original Data::Grove object (`\*(C`Raw\*(C'\fR'). Tying-magic is used so that every time you reference the Data::Grove::Parent object it actually references the underlying raw object. When you retrieve a list or a property of the Raw object, Data::Grove::Parent automatically adds magic to the returned list or node. This means you only call `add_magic()' once to create the first Data::Grove::Parent object and then use the grove objects like you normally would. The most obvious use of this is so you don't have to call a `\*(C`delete\*(C'\fR' method when you want to release a grove or part of a grove; since Data::Grove and Data::Grove::Parent objects have no cyclic references, Perl can garbage collect them normally. A secondary use is to allow you to reuse grove or property set fragments in multiple trees. WARNING: Data::Grove currently does not protect you from creating your own cyclic references! This could lead to infinite loops if you don't take care to avoid them.

METHODS$object>root() $object>rootpath() `\*(C`root()\*(C'\fR' returns the root node if `\f(CW$object\fR' is a `\*(C`Data::Grove::Parent\*(C'\fR' object. `\f(CW\*(C`rootpath()\*(C'\fR' returns an array of all the nodes between and including the root node and `$object'. $tied = $object>add_magic([ $parent ]) `\*(C`add_magic()\*(C'\fR' returns a \f(CW\*(C`Data::Grove::Parent\*(C'\fR object with `$object' as it's `\*(C`Raw\*(C'\fR' object. If `\f(CW$parent\fR' is given, that becomes the tied object's parent object.

AUTHORKen MacLeod, ken@bitsko.slc.ut.us

SEE ALSOperl(1), Data::Grove(3)
0
Johanes Gumabo
Data Size   :   9,918 byte
man-Data::Grove::Parent.3pmBuild   :   2024-12-05, 20:55   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   3 / 168,246
Visitor ID   :     :  
Visitor IP   :   3.15.211.55   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36

Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.

ERROR : Need New Coding :         (parse_manual_page_|249|Data::Grove::Parent.3pm|36/37|el══─{─══.|.el══─{─══. ds -- \|\(em\| )         (htmlprn|149|Data::Grove::Parent.3pm|36/37|.el══─{─══. ds --  —  |.el══─{─══. ds -- \|\(em\| )         (parse_manual_page_|249|Data::Grove::Parent.3pm|41|br══─}─══|'br══─}─══ )         (htmlprn|149|Data::Grove::Parent.3pm|41|'br══─}─══ |'br══─}─══ )         (rof_nr_x|149|Data::Grove::Parent.3pm|51/52|\nF|.ie \nF ══─{─══. de IX )         (rof_unit_scale_px|41|Data::Grove::Parent.3pm|51/52|F|.ie \nF ══─{─══. de IX )         (rof_if|19|Data::Grove::Parent.3pm|51/52|\nF|.ie \nF ══─{─══. de IX )         (htmlprn|149|Data::Grove::Parent.3pm|51/52|.ie \nF ══─{─══. de IX|.ie \nF ══─{─══. de IX )         (rof_escape_sequence|91|Data::Grove::Parent.3pm|53|\$1\t\\n%\t"\\$2" |. tm Index:\\$1\t\\n%\t"\\$2" )         (parse_manual_page_|249|Data::Grove::Parent.3pm|57|══─}─══|.══─}─══ )         (htmlprn|149|Data::Grove::Parent.3pm|57|.══─}─══ |.══─}─══ )         (rof_escape_sequence|91|Data::Grove::Parent.3pm|149|\*(C`Parent\*(C'\fR' and `\f(CW\*(C`Raw\*(C'\fR' properties to Data::Grove objects and methods |`\f(CW\*(C`Parent\*(C'\fR' and `\f(CW\*(C`Raw\*(C'\fR' properties to Data::Grove objects and methods )         (rof_escape_sequence|91|Data::Grove::Parent.3pm|155|\*(C`Parent\*(C'\fR') and a reference to the |contains a parent reference (`\f(CW\*(C`Parent\*(C'\fR') and a reference to the )         (rof_escape_sequence|91|Data::Grove::Parent.3pm|156|\*(C`Raw\*(C'\fR'). Tying-magic is used so that |original Data::Grove object (`\f(CW\*(C`Raw\*(C'\fR'). Tying-magic is used so that )         (rof_escape_sequence|91|Data::Grove::Parent.3pm|167|\*(C`delete\*(C'\fR' method when you want to release a grove or part of a |`\f(CW\*(C`delete\*(C'\fR' method when you want to release a grove or part of a )         (rof_escape_sequence|91|Data::Grove::Parent.3pm|185|\*(C`root()\*(C'\fR' returns the root node if `\f(CW$object\fR' is a |`\f(CW\*(C`root()\*(C'\fR' returns the root node if `\f(CW$object\fR' is a )         (rof_escape_sequence|91|Data::Grove::Parent.3pm|186|\*(C`Data::Grove::Parent\*(C'\fR' object. `\f(CW\*(C`rootpath()\*(C'\fR' returns an array of |`\f(CW\*(C`Data::Grove::Parent\*(C'\fR' object. `\f(CW\*(C`rootpath()\*(C'\fR' returns an array of )         (rof_escape_sequence|91|Data::Grove::Parent.3pm|191|\*(C`add_magic()\*(C'\fR' returns a \f(CW\*(C`Data::Grove::Parent\*(C'\fR object with |`\f(CW\*(C`add_magic()\*(C'\fR' returns a \f(CW\*(C`Data::Grove::Parent\*(C'\fR object with )         (rof_escape_sequence|91|Data::Grove::Parent.3pm|192|\*(C`Raw\*(C'\fR' object. If `\f(CW$parent\fR' is given, that |`\f(CW$object\fR' as it's `\f(CW\*(C`Raw\*(C'\fR' object. If `\f(CW$parent\fR' is given, that )