Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F7058396
ElementList.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
ElementList.php
View Options
<?php
namespace
Sabre\VObject
;
/**
* VObject ElementList
*
* This class represents a list of elements. Lists are the result of queries,
* such as doing $vcalendar->vevent where there's multiple VEVENT objects.
*
* @copyright Copyright (C) 2007-2013 fruux GmbH (https://fruux.com/).
* @author Evert Pot (http://evertpot.com/)
* @license http://code.google.com/p/sabredav/wiki/License Modified BSD License
*/
class
ElementList
implements
\Iterator
,
\Countable
,
\ArrayAccess
{
/**
* Inner elements
*
* @var array
*/
protected
$elements
=
array
();
/**
* Creates the element list.
*
* @param array $elements
*/
public
function
__construct
(
array
$elements
)
{
$this
->
elements
=
$elements
;
}
/* {{{ Iterator interface */
/**
* Current position
*
* @var int
*/
private
$key
=
0
;
/**
* Returns current item in iteration
*
* @return Element
*/
public
function
current
()
{
return
$this
->
elements
[
$this
->
key
];
}
/**
* To the next item in the iterator
*
* @return void
*/
public
function
next
()
{
$this
->
key
++;
}
/**
* Returns the current iterator key
*
* @return int
*/
public
function
key
()
{
return
$this
->
key
;
}
/**
* Returns true if the current position in the iterator is a valid one
*
* @return bool
*/
public
function
valid
()
{
return
isset
(
$this
->
elements
[
$this
->
key
]);
}
/**
* Rewinds the iterator
*
* @return void
*/
public
function
rewind
()
{
$this
->
key
=
0
;
}
/* }}} */
/* {{{ Countable interface */
/**
* Returns the number of elements
*
* @return int
*/
public
function
count
()
{
return
count
(
$this
->
elements
);
}
/* }}} */
/* {{{ ArrayAccess Interface */
/**
* Checks if an item exists through ArrayAccess.
*
* @param int $offset
* @return bool
*/
public
function
offsetExists
(
$offset
)
{
return
isset
(
$this
->
elements
[
$offset
]);
}
/**
* Gets an item through ArrayAccess.
*
* @param int $offset
* @return mixed
*/
public
function
offsetGet
(
$offset
)
{
return
$this
->
elements
[
$offset
];
}
/**
* Sets an item through ArrayAccess.
*
* @param int $offset
* @param mixed $value
* @return void
*/
public
function
offsetSet
(
$offset
,
$value
)
{
throw
new
\LogicException
(
'You can not add new objects to an ElementList'
);
}
/**
* Sets an item through ArrayAccess.
*
* This method just forwards the request to the inner iterator
*
* @param int $offset
* @return void
*/
public
function
offsetUnset
(
$offset
)
{
throw
new
\LogicException
(
'You can not remove objects from an ElementList'
);
}
/* }}} */
}
File Metadata
Details
Attached
Mime Type
text/x-php
Expires
Fri, Jun 12, 4:49 AM (1 h, 37 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
850259
Default Alt Text
ElementList.php (2 KB)
Attached To
Mode
R14 roundcubemail-plugins-kolab
Attached
Detach File
Event Timeline
Log In to Comment