/[cvs]/nfo/php/libs/org.netfrag.glib/Data/Container.php
ViewVC logotype

Contents of /nfo/php/libs/org.netfrag.glib/Data/Container.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (show annotations)
Tue Mar 11 01:22:24 2003 UTC (21 years, 5 months ago) by joko
Branch: MAIN
Changes since 1.2: +8 -2 lines
+ fixed metadata for phpDocumentor

1 <?php
2 /**
3 * This file contains the Data::Container class.
4 *
5 * @author Andreas Motl <andreas.motl@ilo.de>
6 * @package org.netfrag.glib
7 * @name Data::Container
8 *
9 */
10
11 /**
12 * <b>Cvs-Log:</b>
13 *
14 * <pre>
15 * $Id: Container.php,v 1.2 2003/03/05 18:54:44 joko Exp $
16 *
17 * $Log: Container.php,v $
18 * Revision 1.2 2003/03/05 18:54:44 joko
19 * updated docu - phpDocumentor is very strict about its 'blocks'...
20 *
21 * Revision 1.1 2003/03/03 21:27:28 joko
22 * + initial commit
23 *
24 * Revision 1.2 2003/03/01 21:12:13 joko
25 * new core methods
26 *
27 * Revision 1.1 2003/03/01 16:51:50 joko
28 * + initial commit
29 *
30 * Revision 1.1 2003/03/01 15:31:18 joko
31 * + initial commit
32 * </pre>
33 *
34 */
35
36
37 /**
38 * --- Data::Container
39 *
40 *
41 * @author Andreas Motl <andreas.motl@ilo.de>
42 * @copyright (c) 2003 - All Rights reserved.
43 * @license GNU LGPL (GNU Lesser General Public License)
44 *
45 * @link http://www.netfrag.org/~joko/
46 * @link http://www.gnu.org/licenses/lgpl.txt
47 *
48 * @package org.netfrag.glib
49 * @subpackage Data
50 * @name Data::Container
51 *
52 */
53 class Data_Container {
54
55 var $_index;
56
57 /**
58 * The constructor ...
59 * ... just does nothing.
60 *
61 * @param registry
62 */
63 function Data_Container() {
64 }
65
66 function get_address($entity) {
67 return '_' . $entity;
68 }
69
70 function &push() {
71 $args = &func_get_args();
72 $entity = array_shift($args);
73 $name = $this->get_address($entity);
74 // shrink array to single item?
75 if (sizeof($args) == 1) { $args = $args[0]; }
76 //$this->$entity[sizeof($this->$entity)] = &$args;
77 if (!is_array($this->$name)) {
78 php::array_cast_safe($this->$name);
79 }
80 array_push($this->$name, &$args);
81 }
82
83 function &slot($entity, $slot) {
84 $name = $this->get_address($entity);
85 return $this->$name[$slot];
86 }
87
88 function &last($entity) {
89 $name = $this->get_address($entity);
90 $item = &$this->$name;
91 return $item[sizeof($item) - 1];
92 }
93
94 }
95
96 ?>

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed