annotate vendor/sabre/vobject/lib/Node.php @ 8:899c8c6a0519

distro
author Charlie Root
date Sat, 13 Jan 2018 09:21:07 -0500
parents 430dbd5346f7
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
1 <?php
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
2
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
3 namespace Sabre\VObject;
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
4
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
5 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
6 * A node is the root class for every element in an iCalendar of vCard object.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
7 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
8 * @copyright Copyright (C) 2011-2015 fruux GmbH (https://fruux.com/).
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
9 * @author Evert Pot (http://evertpot.com/)
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
10 * @license http://sabre.io/license/ Modified BSD License
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
11 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
12 abstract class Node implements \IteratorAggregate, \ArrayAccess, \Countable {
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
13
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
14 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
15 * The following constants are used by the validate() method.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
16 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
17 * If REPAIR is set, the validator will attempt to repair any broken data
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
18 * (if possible).
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
19 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
20 const REPAIR = 1;
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
21
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
22 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
23 * If this option is set, the validator will operate on the vcards on the
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
24 * assumption that the vcards need to be valid for CardDAV.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
25 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
26 * This means for example that the UID is required, whereas it is not for
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
27 * regular vcards.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
28 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
29 const PROFILE_CARDDAV = 2;
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
30
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
31 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
32 * If this option is set, the validator will operate on iCalendar objects
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
33 * on the assumption that the vcards need to be valid for CalDAV.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
34 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
35 * This means for example that calendars can only contain objects with
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
36 * identical component types and UIDs.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
37 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
38 const PROFILE_CALDAV = 4;
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
39
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
40 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
41 * Reference to the parent object, if this is not the top object.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
42 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
43 * @var Node
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
44 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
45 public $parent;
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
46
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
47 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
48 * Iterator override
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
49 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
50 * @var ElementList
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
51 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
52 protected $iterator = null;
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
53
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
54 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
55 * The root document
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
56 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
57 * @var Component
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
58 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
59 protected $root;
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
60
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
61 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
62 * Serializes the node into a mimedir format
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
63 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
64 * @return string
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
65 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
66 abstract public function serialize();
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
67
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
68 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
69 * This method returns an array, with the representation as it should be
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
70 * encoded in json. This is used to create jCard or jCal documents.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
71 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
72 * @return array
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
73 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
74 abstract public function jsonSerialize();
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
75
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
76 /* {{{ IteratorAggregator interface */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
77
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
78 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
79 * Returns the iterator for this object
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
80 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
81 * @return ElementList
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
82 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
83 public function getIterator() {
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
84
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
85 if (!is_null($this->iterator))
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
86 return $this->iterator;
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
87
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
88 return new ElementList(array($this));
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
89
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
90 }
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
91
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
92 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
93 * Sets the overridden iterator
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
94 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
95 * Note that this is not actually part of the iterator interface
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
96 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
97 * @param ElementList $iterator
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
98 * @return void
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
99 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
100 public function setIterator(ElementList $iterator) {
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
101
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
102 $this->iterator = $iterator;
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
103
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
104 }
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
105
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
106 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
107 * Validates the node for correctness.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
108 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
109 * The following options are supported:
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
110 * Node::REPAIR - May attempt to automatically repair the problem.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
111 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
112 * This method returns an array with detected problems.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
113 * Every element has the following properties:
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
114 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
115 * * level - problem level.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
116 * * message - A human-readable string describing the issue.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
117 * * node - A reference to the problematic node.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
118 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
119 * The level means:
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
120 * 1 - The issue was repaired (only happens if REPAIR was turned on)
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
121 * 2 - An inconsequential issue
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
122 * 3 - A severe issue.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
123 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
124 * @param int $options
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
125 * @return array
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
126 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
127 public function validate($options = 0) {
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
128
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
129 return array();
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
130
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
131 }
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
132
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
133 /* }}} */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
134
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
135 /* {{{ Countable interface */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
136
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
137 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
138 * Returns the number of elements
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
139 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
140 * @return int
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
141 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
142 public function count() {
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
143
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
144 $it = $this->getIterator();
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
145 return $it->count();
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
146
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
147 }
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
148
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
149 /* }}} */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
150
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
151 /* {{{ ArrayAccess Interface */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
152
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
153
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
154 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
155 * Checks if an item exists through ArrayAccess.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
156 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
157 * This method just forwards the request to the inner iterator
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
158 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
159 * @param int $offset
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
160 * @return bool
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
161 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
162 public function offsetExists($offset) {
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
163
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
164 $iterator = $this->getIterator();
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
165 return $iterator->offsetExists($offset);
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
166
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
167 }
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
168
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
169 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
170 * Gets an item through ArrayAccess.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
171 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
172 * This method just forwards the request to the inner iterator
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
173 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
174 * @param int $offset
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
175 * @return mixed
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
176 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
177 public function offsetGet($offset) {
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
178
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
179 $iterator = $this->getIterator();
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
180 return $iterator->offsetGet($offset);
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
181
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
182 }
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
183
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
184 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
185 * Sets an item through ArrayAccess.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
186 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
187 * This method just forwards the request to the inner iterator
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
188 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
189 * @param int $offset
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
190 * @param mixed $value
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
191 * @return void
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
192 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
193 public function offsetSet($offset, $value) {
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
194
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
195 $iterator = $this->getIterator();
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
196 $iterator->offsetSet($offset,$value);
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
197
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
198 // @codeCoverageIgnoreStart
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
199 //
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
200 // This method always throws an exception, so we ignore the closing
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
201 // brace
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
202 }
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
203 // @codeCoverageIgnoreEnd
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
204
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
205 /**
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
206 * Sets an item through ArrayAccess.
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
207 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
208 * This method just forwards the request to the inner iterator
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
209 *
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
210 * @param int $offset
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
211 * @return void
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
212 */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
213 public function offsetUnset($offset) {
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
214
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
215 $iterator = $this->getIterator();
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
216 $iterator->offsetUnset($offset);
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
217
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
218 // @codeCoverageIgnoreStart
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
219 //
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
220 // This method always throws an exception, so we ignore the closing
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
221 // brace
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
222 }
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
223 // @codeCoverageIgnoreEnd
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
224
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
225 /* }}} */
430dbd5346f7 vendor sabre as distributed
Charlie Root
parents:
diff changeset
226 }