<?xml version="1.0"?>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><title>phpDox - Source of Table.php</title><link rel="stylesheet" type="text/css" href="../css/style.css" media="screen"/><link rel="stylesheet" href="../css/source.css"/><meta http-equiv="content-type" content="text/html; charset=utf-8"/></head><body><nav class="topnav"><ul><li><div class="logo"><span>/**</span>phpDox</div></li><li class="separator"><a href="../index.xhtml">Overview</a></li><li class="separator"><a href="../namespaces.xhtml">Namespaces</a></li><li><a href="../classes.xhtml">Classes</a></li><li class="separator"><a href="../source/index.xhtml">Source</a></li></ul></nav><div id="mainstage"><div class="box"><ul class="breadcrumb"><li><a href="../index.xhtml">Overview</a></li><li class="separator"><a href="../source/index.xhtml">Source</a></li></ul></div><h1>Source of file Table.php</h1><p>
Size: 7,722 Bytes - Last Modified: 2019-11-07T20:45:43+00:00</p><section><h2><small>/Users/twebb/Projects/cli-output/cli/packages/webbtj/clico/src/</small>Table.php</h2><table class="source"><tr><td class="no"><a class="anker" href="#line1">1</a><a class="anker" href="#line2">2</a><a class="anker" href="#line3">3</a><a class="anker" href="#line4">4</a><a class="anker" href="#line5">5</a><a class="anker" href="#line6">6</a><a class="anker" href="#line7">7</a><a class="anker" href="#line8">8</a><a class="anker" href="#line9">9</a><a class="anker" href="#line10">10</a><a class="anker" href="#line11">11</a><a class="anker" href="#line12">12</a><a class="anker" href="#line13">13</a><a class="anker" href="#line14">14</a><a class="anker" href="#line15">15</a><a class="anker" href="#line16">16</a><a class="anker" href="#line17">17</a><a class="anker" href="#line18">18</a><a class="anker" href="#line19">19</a><a class="anker" href="#line20">20</a><a class="anker" href="#line21">21</a><a class="anker" href="#line22">22</a><a class="anker" href="#line23">23</a><a class="anker" href="#line24">24</a><a class="anker" href="#line25">25</a><a class="anker" href="#line26">26</a><a class="anker" href="#line27">27</a><a class="anker" href="#line28">28</a><a class="anker" href="#line29">29</a><a class="anker" href="#line30">30</a><a class="anker" href="#line31">31</a><a class="anker" href="#line32">32</a><a class="anker" href="#line33">33</a><a class="anker" href="#line34">34</a><a class="anker" href="#line35">35</a><a class="anker" href="#line36">36</a><a class="anker" href="#line37">37</a><a class="anker" href="#line38">38</a><a class="anker" href="#line39">39</a><a class="anker" href="#line40">40</a><a class="anker" href="#line41">41</a><a class="anker" href="#line42">42</a><a class="anker" href="#line43">43</a><a class="anker" href="#line44">44</a><a class="anker" href="#line45">45</a><a class="anker" href="#line46">46</a><a class="anker" href="#line47">47</a><a class="anker" href="#line48">48</a><a class="anker" href="#line49">49</a><a class="anker" href="#line50">50</a><a class="anker" href="#line51">51</a><a class="anker" href="#line52">52</a><a class="anker" href="#line53">53</a><a class="anker" href="#line54">54</a><a class="anker" href="#line55">55</a><a class="anker" href="#line56">56</a><a class="anker" href="#line57">57</a><a class="anker" href="#line58">58</a><a class="anker" href="#line59">59</a><a class="anker" href="#line60">60</a><a class="anker" href="#line61">61</a><a class="anker" href="#line62">62</a><a class="anker" href="#line63">63</a><a class="anker" href="#line64">64</a><a class="anker" href="#line65">65</a><a class="anker" href="#line66">66</a><a class="anker" href="#line67">67</a><a class="anker" href="#line68">68</a><a class="anker" href="#line69">69</a><a class="anker" href="#line70">70</a><a class="anker" href="#line71">71</a><a class="anker" href="#line72">72</a><a class="anker" href="#line73">73</a><a class="anker" href="#line74">74</a><a class="anker" href="#line75">75</a><a class="anker" href="#line76">76</a><a class="anker" href="#line77">77</a><a class="anker" href="#line78">78</a><a class="anker" href="#line79">79</a><a class="anker" href="#line80">80</a><a class="anker" href="#line81">81</a><a class="anker" href="#line82">82</a><a class="anker" href="#line83">83</a><a class="anker" href="#line84">84</a><a class="anker" href="#line85">85</a><a class="anker" href="#line86">86</a><a class="anker" href="#line87">87</a><a class="anker" href="#line88">88</a><a class="anker" href="#line89">89</a><a class="anker" href="#line90">90</a><a class="anker" href="#line91">91</a><a class="anker" href="#line92">92</a><a class="anker" href="#line93">93</a><a class="anker" href="#line94">94</a><a class="anker" href="#line95">95</a><a class="anker" href="#line96">96</a><a class="anker" href="#line97">97</a><a class="anker" href="#line98">98</a><a class="anker" href="#line99">99</a><a class="anker" href="#line100">100</a><a class="anker" href="#line101">101</a><a class="anker" href="#line102">102</a><a class="anker" href="#line103">103</a><a class="anker" href="#line104">104</a><a class="anker" href="#line105">105</a><a class="anker" href="#line106">106</a><a class="anker" href="#line107">107</a><a class="anker" href="#line108">108</a><a class="anker" href="#line109">109</a><a class="anker" href="#line110">110</a><a class="anker" href="#line111">111</a><a class="anker" href="#line112">112</a><a class="anker" href="#line113">113</a><a class="anker" href="#line114">114</a><a class="anker" href="#line115">115</a><a class="anker" href="#line116">116</a><a class="anker" href="#line117">117</a><a class="anker" href="#line118">118</a><a class="anker" href="#line119">119</a><a class="anker" href="#line120">120</a><a class="anker" href="#line121">121</a><a class="anker" href="#line122">122</a><a class="anker" href="#line123">123</a><a class="anker" href="#line124">124</a><a class="anker" href="#line125">125</a><a class="anker" href="#line126">126</a><a class="anker" href="#line127">127</a><a class="anker" href="#line128">128</a><a class="anker" href="#line129">129</a><a class="anker" href="#line130">130</a><a class="anker" href="#line131">131</a><a class="anker" href="#line132">132</a><a class="anker" href="#line133">133</a><a class="anker" href="#line134">134</a><a class="anker" href="#line135">135</a><a class="anker" href="#line136">136</a><a class="anker" href="#line137">137</a><a class="anker" href="#line138">138</a><a class="anker" href="#line139">139</a><a class="anker" href="#line140">140</a><a class="anker" href="#line141">141</a><a class="anker" href="#line142">142</a><a class="anker" href="#line143">143</a><a class="anker" href="#line144">144</a><a class="anker" href="#line145">145</a><a class="anker" href="#line146">146</a><a class="anker" href="#line147">147</a><a class="anker" href="#line148">148</a><a class="anker" href="#line149">149</a><a class="anker" href="#line150">150</a><a class="anker" href="#line151">151</a><a class="anker" href="#line152">152</a><a class="anker" href="#line153">153</a><a class="anker" href="#line154">154</a><a class="anker" href="#line155">155</a><a class="anker" href="#line156">156</a><a class="anker" href="#line157">157</a><a class="anker" href="#line158">158</a><a class="anker" href="#line159">159</a><a class="anker" href="#line160">160</a><a class="anker" href="#line161">161</a><a class="anker" href="#line162">162</a><a class="anker" href="#line163">163</a><a class="anker" href="#line164">164</a><a class="anker" href="#line165">165</a><a class="anker" href="#line166">166</a><a class="anker" href="#line167">167</a><a class="anker" href="#line168">168</a><a class="anker" href="#line169">169</a><a class="anker" href="#line170">170</a><a class="anker" href="#line171">171</a><a class="anker" href="#line172">172</a><a class="anker" href="#line173">173</a><a class="anker" href="#line174">174</a><a class="anker" href="#line175">175</a><a class="anker" href="#line176">176</a><a class="anker" href="#line177">177</a><a class="anker" href="#line178">178</a><a class="anker" href="#line179">179</a><a class="anker" href="#line180">180</a><a class="anker" href="#line181">181</a><a class="anker" href="#line182">182</a><a class="anker" href="#line183">183</a><a class="anker" href="#line184">184</a><a class="anker" href="#line185">185</a><a class="anker" href="#line186">186</a><a class="anker" href="#line187">187</a><a class="anker" href="#line188">188</a><a class="anker" href="#line189">189</a><a class="anker" href="#line190">190</a><a class="anker" href="#line191">191</a><a class="anker" href="#line192">192</a><a class="anker" href="#line193">193</a><a class="anker" href="#line194">194</a><a class="anker" href="#line195">195</a><a class="anker" href="#line196">196</a><a class="anker" href="#line197">197</a><a class="anker" href="#line198">198</a><a class="anker" href="#line199">199</a><a class="anker" href="#line200">200</a><a class="anker" href="#line201">201</a><a class="anker" href="#line202">202</a><a class="anker" href="#line203">203</a><a class="anker" href="#line204">204</a><a class="anker" href="#line205">205</a><a class="anker" href="#line206">206</a><a class="anker" href="#line207">207</a><a class="anker" href="#line208">208</a><a class="anker" href="#line209">209</a><a class="anker" href="#line210">210</a><a class="anker" href="#line211">211</a><a class="anker" href="#line212">212</a><a class="anker" href="#line213">213</a><a class="anker" href="#line214">214</a><a class="anker" href="#line215">215</a><a class="anker" href="#line216">216</a><a class="anker" href="#line217">217</a><a class="anker" href="#line218">218</a><a class="anker" href="#line219">219</a><a class="anker" href="#line220">220</a><a class="anker" href="#line221">221</a><a class="anker" href="#line222">222</a><a class="anker" href="#line223">223</a><a class="anker" href="#line224">224</a><a class="anker" href="#line225">225</a><a class="anker" href="#line226">226</a><a class="anker" href="#line227">227</a><a class="anker" href="#line228">228</a><a class="anker" href="#line229">229</a><a class="anker" href="#line230">230</a><a class="anker" href="#line231">231</a><a class="anker" href="#line232">232</a><a class="anker" href="#line233">233</a><a class="anker" href="#line234">234</a><a class="anker" href="#line235">235</a><a class="anker" href="#line236">236</a><a class="anker" href="#line237">237</a><a class="anker" href="#line238">238</a><a class="anker" href="#line239">239</a><a class="anker" href="#line240">240</a><a class="anker" href="#line241">241</a><a class="anker" href="#line242">242</a><a class="anker" href="#line243">243</a><a class="anker" href="#line244">244</a><a class="anker" href="#line245">245</a><a class="anker" href="#line246">246</a><a class="anker" href="#line247">247</a><a class="anker" href="#line248">248</a><a class="anker" href="#line249">249</a><a class="anker" href="#line250">250</a><a class="anker" href="#line251">251</a><a class="anker" href="#line252">252</a><a class="anker" href="#line253">253</a><a class="anker" href="#line254">254</a><a class="anker" href="#line255">255</a><a class="anker" href="#line256">256</a><a class="anker" href="#line257">257</a><a class="anker" href="#line258">258</a><a class="anker" href="#line259">259</a><a class="anker" href="#line260">260</a><a class="anker" href="#line261">261</a><a class="anker" href="#line262">262</a><a class="anker" href="#line263">263</a><a class="anker" href="#line264">264</a><a class="anker" href="#line265">265</a><a class="anker" href="#line266">266</a><a class="anker" href="#line267">267</a><a class="anker" href="#line268">268</a><a class="anker" href="#line269">269</a><a class="anker" href="#line270">270</a><a class="anker" href="#line271">271</a><a class="anker" href="#line272">272</a><a class="anker" href="#line273">273</a><a class="anker" href="#line274">274</a><a class="anker" href="#line275">275</a><a class="anker" href="#line276">276</a><a class="anker" href="#line277">277</a><a class="anker" href="#line278">278</a><a class="anker" href="#line279">279</a><a class="anker" href="#line280">280</a><a class="anker" href="#line281">281</a><a class="anker" href="#line282">282</a><a class="anker" href="#line283">283</a><a class="anker" href="#line284">284</a><a class="anker" href="#line285">285</a><a class="anker" href="#line286">286</a><a class="anker" href="#line287">287</a><a class="anker" href="#line288">288</a><a class="anker" href="#line289">289</a><a class="anker" href="#line290">290</a><a class="anker" href="#line291">291</a><a class="anker" href="#line292">292</a><a class="anker" href="#line293">293</a><a class="anker" href="#line294">294</a><a class="anker" href="#line295">295</a><a class="anker" href="#line296">296</a><a class="anker" href="#line297">297</a><a class="anker" href="#line298">298</a><a class="anker" href="#line299">299</a><a class="anker" href="#line300">300</a><a class="anker" href="#line301">301</a><a class="anker" href="#line302">302</a><a class="anker" href="#line303">303</a><a class="anker" href="#line304">304</a><a class="anker" href="#line305">305</a><a class="anker" href="#line306">306</a><a class="anker" href="#line307">307</a><a class="anker" href="#line308">308</a><a class="anker" href="#line309">309</a><a class="anker" href="#line310">310</a><a class="anker" href="#line311">311</a><a class="anker" href="#line312">312</a><a class="anker" href="#line313">313</a><a class="anker" href="#line314">314</a><a class="anker" href="#line315">315</a><a class="anker" href="#line316">316</a><a class="anker" href="#line317">317</a><a class="anker" href="#line318">318</a><a class="anker" href="#line319">319</a><a class="anker" href="#line320">320</a><a class="anker" href="#line321">321</a><a class="anker" href="#line322">322</a><a class="anker" href="#line323">323</a><a class="anker" href="#line324">324</a><a class="anker" href="#line325">325</a><a class="anker" href="#line326">326</a><a class="anker" href="#line327">327</a></td><td class="line"><div id="line1"><pre><span class="token T_OPEN_TAG"><?php</span></pre></div><div id="line2"><br/></div><div id="line3"><pre><span class="token T_NAMESPACE">namespace</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">Webbtj</span><span class="token T_NS_SEPARATOR">\</span><span class="token T_STRING">Clico</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line4"><br/></div><div id="line5"><pre><span class="token T_USE">use</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">Webbtj</span><span class="token T_NS_SEPARATOR">\</span><span class="token T_STRING">Clico</span><span class="token T_NS_SEPARATOR">\</span><span class="token T_STRING">Row</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line6"><pre><span class="token T_USE">use</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">Webbtj</span><span class="token T_NS_SEPARATOR">\</span><span class="token T_STRING">Clico</span><span class="token T_NS_SEPARATOR">\</span><span class="token T_STRING">Text</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line7"><br/></div><div id="line8"><pre><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line9"><pre><span class="token T_DOC_COMMENT"> * The Clico Table class allows for formatting tabular data for the CLI stdOut.</span></pre></div><div id="line10"><pre><span class="token T_DOC_COMMENT"> * </span></pre></div><div id="line11"><pre><span class="token T_DOC_COMMENT"> * It utilizes the Text class to allow for decorating text for the CLI stdOut.</span></pre></div><div id="line12"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line13"><pre><span class="token T_CLASS">class</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">Table</span></pre></div><div id="line14"><pre><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line15"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PRIVATE">private</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$accessColumn</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line16"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PRIVATE">private</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$accessRow</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line17"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PRIVATE">private</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$headerLineCharacter</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_CONSTANT_ENCAPSED_STRING">'='</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line18"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PRIVATE">private</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$pipeCharacter</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_CONSTANT_ENCAPSED_STRING">'|'</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line19"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PRIVATE">private</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$rowLineCharacter</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_CONSTANT_ENCAPSED_STRING">'-'</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line20"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PRIVATE">private</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$rows</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_PHPDOX_SEMICOLON">;</span><span class="token T_WHITESPACE"> </span></pre></div><div id="line21"><br/></div><div id="line22"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line23"><pre><span class="token T_DOC_COMMENT"> * A catch-all used to send Text decoration methods down to table column(s)</span></pre></div><div id="line24"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line25"><pre><span class="token T_DOC_COMMENT"> * @param string $method</span></pre></div><div id="line26"><pre><span class="token T_DOC_COMMENT"> * @param Array $args</span></pre></div><div id="line27"><pre><span class="token T_DOC_COMMENT"> * @return Table</span></pre></div><div id="line28"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line29"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">__call</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$method</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$args</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line30"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line31"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$rows</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line32"><pre><span class="token T_WHITESPACE"> </span><span class="token T_IF">if</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_EXCLAMATION_MARK">!</span><span class="token T_STRING">is_null</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">accessRow</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_WHITESPACE"> </span><span class="token T_BOOLEAN_AND">&&</span><span class="token T_WHITESPACE"> </span><span class="token T_ISSET">isset</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$rows</span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">accessRow</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line33"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$rows</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_VARIABLE">$rows</span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">accessRow</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line34"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line35"><pre><span class="token T_WHITESPACE"> </span><span class="token T_FOREACH">foreach</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$rows</span><span class="token T_WHITESPACE"> </span><span class="token T_AS">as</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_AMPERSAND">&</span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line36"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$columns</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">getColumns</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line37"><pre><span class="token T_WHITESPACE"> </span><span class="token T_IF">if</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_EXCLAMATION_MARK">!</span><span class="token T_STRING">is_null</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">accessColumn</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_WHITESPACE"> </span><span class="token T_BOOLEAN_AND">&&</span><span class="token T_WHITESPACE"> </span><span class="token T_ISSET">isset</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$columns</span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">accessColumn</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line38"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$columns</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_VARIABLE">$columns</span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">accessColumn</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line39"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line40"><pre><span class="token T_WHITESPACE"> </span><span class="token T_FOREACH">foreach</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$columns</span><span class="token T_WHITESPACE"> </span><span class="token T_AS">as</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$column</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line41"><pre><span class="token T_WHITESPACE"> </span><span class="token T_STRING">call_user_func_array</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_VARIABLE">$column</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">getTextWriter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$method</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$args</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line42"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line43"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line44"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line45"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line46"><br/></div><div id="line47"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line48"><pre><span class="token T_DOC_COMMENT"> * Constructor. Can optionally populate the data. Can optionally set the</span></pre></div><div id="line49"><pre><span class="token T_DOC_COMMENT"> * first row of data as the header row.</span></pre></div><div id="line50"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line51"><pre><span class="token T_DOC_COMMENT"> * @param Array $data</span></pre></div><div id="line52"><pre><span class="token T_DOC_COMMENT"> * @param boolean $firstRowAsHeader</span></pre></div><div id="line53"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line54"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">__construct</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_ARRAY">Array</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$data</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">null</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$firstRowAsHeader</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">true</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line55"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line56"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">setRowLineCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rowLineCharacter</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">false</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line57"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">setHeaderLineCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">headerLineCharacter</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">false</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line58"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">setPipeCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">pipeCharacter</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">false</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line59"><br/></div><div id="line60"><pre><span class="token T_WHITESPACE"> </span><span class="token T_IF">if</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$data</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line61"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">populate</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$data</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line62"><pre><span class="token T_WHITESPACE"> </span><span class="token T_IF">if</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$firstRowAsHeader</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line63"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">setFirstRowAsHeader</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line64"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line65"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line66"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line67"><br/></div><div id="line68"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line69"><pre><span class="token T_DOC_COMMENT"> * Render the entire table using Text instances</span></pre></div><div id="line70"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line71"><pre><span class="token T_DOC_COMMENT"> * @return string</span></pre></div><div id="line72"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line73"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">__toString</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line74"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">pushCharactersToRows</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line75"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$output</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_CONSTANT_ENCAPSED_STRING">""</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line76"><pre><span class="token T_WHITESPACE"> </span><span class="token T_FOREACH">foreach</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_WHITESPACE"> </span><span class="token T_AS">as</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line77"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$output</span><span class="token T_WHITESPACE"> </span><span class="token T_CONCAT_EQUAL">.=</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line78"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line79"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$output</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line80"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line81"><br/></div><div id="line82"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line83"><pre><span class="token T_DOC_COMMENT"> * Add a header row. Unsets the previous header row.</span></pre></div><div id="line84"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line85"><pre><span class="token T_DOC_COMMENT"> * @param Array $row</span></pre></div><div id="line86"><pre><span class="token T_DOC_COMMENT"> * @return Table</span></pre></div><div id="line87"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line88"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">addHeader</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_ARRAY">Array</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line89"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line90"><pre><span class="token T_WHITESPACE"> </span><span class="token T_FOREACH">foreach</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_WHITESPACE"> </span><span class="token T_AS">as</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$r</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line91"><pre><span class="token T_WHITESPACE"> </span><span class="token T_IF">if</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$r</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">isHeader</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line92"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$r</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">unsetHeader</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line93"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line94"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line95"><pre><span class="token T_WHITESPACE"> </span><span class="token T_IF">if</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_STRING">is_array</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line96"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_NEW">new</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">Row</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line97"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">setHeader</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line98"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">array_merge</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line99"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">populate</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line100"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line101"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line102"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line103"><br/></div><div id="line104"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line105"><pre><span class="token T_DOC_COMMENT"> * Add a row</span></pre></div><div id="line106"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line107"><pre><span class="token T_DOC_COMMENT"> * @param Row $row</span></pre></div><div id="line108"><pre><span class="token T_DOC_COMMENT"> * @return Table</span></pre></div><div id="line109"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line110"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">addRow</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_STRING">Row</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line111"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line112"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line113"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">populate</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line114"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line115"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line116"><br/></div><div id="line117"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line118"><pre><span class="token T_DOC_COMMENT"> * Target a specific cell for text decoration</span></pre></div><div id="line119"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line120"><pre><span class="token T_DOC_COMMENT"> * @param integer $column</span></pre></div><div id="line121"><pre><span class="token T_DOC_COMMENT"> * @param integer $row</span></pre></div><div id="line122"><pre><span class="token T_DOC_COMMENT"> * @return Table</span></pre></div><div id="line123"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line124"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">cell</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_STRING">int</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$column</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">int</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line125"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line126"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">row</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">column</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$column</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line127"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line128"><br/></div><div id="line129"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line130"><pre><span class="token T_DOC_COMMENT"> * Target an entire column for text decoration</span></pre></div><div id="line131"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line132"><pre><span class="token T_DOC_COMMENT"> * @param integer $index</span></pre></div><div id="line133"><pre><span class="token T_DOC_COMMENT"> * @return Table</span></pre></div><div id="line134"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line135"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">column</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_STRING">int</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$index</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">null</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line136"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line137"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">accessColumn</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$index</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line138"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line139"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line140"><br/></div><div id="line141"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line142"><pre><span class="token T_DOC_COMMENT"> * Fit all columns to the table (width and height)</span></pre></div><div id="line143"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line144"><pre><span class="token T_DOC_COMMENT"> * @param integer $maxWidth</span></pre></div><div id="line145"><pre><span class="token T_DOC_COMMENT"> * @return Table</span></pre></div><div id="line146"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line147"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">distributeColumns</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$maxWidth</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_LNUMBER">160</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line148"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line149"><pre><span class="token T_WHITESPACE"> </span><span class="token T_FOREACH">foreach</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_WHITESPACE"> </span><span class="token T_AS">as</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_AMPERSAND">&</span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line150"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">distributeColumns</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$maxWidth</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">getWidth</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line151"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">verticalConform</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line152"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line153"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line154"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line155"><br/></div><div id="line156"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line157"><pre><span class="token T_DOC_COMMENT"> * Get the character (decorated) used to separate the header row from the body</span></pre></div><div id="line158"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line159"><pre><span class="token T_DOC_COMMENT"> * @return Text</span></pre></div><div id="line160"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line161"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">getHeaderLineCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line162"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line163"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">headerLineCharacter</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line164"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line165"><br/></div><div id="line166"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line167"><pre><span class="token T_DOC_COMMENT"> * Get the number of rows high the table is</span></pre></div><div id="line168"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line169"><pre><span class="token T_DOC_COMMENT"> * @return void</span></pre></div><div id="line170"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line171"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">getHeight</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line172"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line173"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">count</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line174"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line175"><br/></div><div id="line176"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line177"><pre><span class="token T_DOC_COMMENT"> * Get the character (decorated) used to separate columns</span></pre></div><div id="line178"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line179"><pre><span class="token T_DOC_COMMENT"> * @return Text</span></pre></div><div id="line180"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line181"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">getPipeCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line182"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line183"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">pipeCharacter</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line184"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line185"><br/></div><div id="line186"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line187"><pre><span class="token T_DOC_COMMENT"> * Get the character (decorated) used to separate body rows</span></pre></div><div id="line188"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line189"><pre><span class="token T_DOC_COMMENT"> * @return Text</span></pre></div><div id="line190"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line191"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">getRowLineCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line192"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line193"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rowLineCharacter</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line194"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line195"><br/></div><div id="line196"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line197"><pre><span class="token T_DOC_COMMENT"> * Get the number of columns wide the table is</span></pre></div><div id="line198"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line199"><pre><span class="token T_DOC_COMMENT"> * @return integer</span></pre></div><div id="line200"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line201"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">getWidth</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line202"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line203"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$width</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_LNUMBER">0</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line204"><pre><span class="token T_WHITESPACE"> </span><span class="token T_FOREACH">foreach</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_WHITESPACE"> </span><span class="token T_AS">as</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line205"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$width</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">max</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$width</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">getWidth</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line206"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line207"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$width</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line208"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line209"><br/></div><div id="line210"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line211"><pre><span class="token T_DOC_COMMENT"> * Reformat Rows' and Columns' widths, heights, and separation characters as necessary.</span></pre></div><div id="line212"><pre><span class="token T_DOC_COMMENT"> * Optionally add rows of data to the table</span></pre></div><div id="line213"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line214"><pre><span class="token T_DOC_COMMENT"> * @param Array $data</span></pre></div><div id="line215"><pre><span class="token T_DOC_COMMENT"> * @return Table</span></pre></div><div id="line216"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line217"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">populate</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_ARRAY">Array</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$data</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">null</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line218"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line219"><pre><span class="token T_WHITESPACE"> </span><span class="token T_IF">if</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$data</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line220"><pre><span class="token T_WHITESPACE"> </span><span class="token T_FOREACH">foreach</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$data</span><span class="token T_WHITESPACE"> </span><span class="token T_AS">as</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line221"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">addRow</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_NEW">new</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">Row</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line222"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line223"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line224"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">pushCharactersToRows</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line225"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">distributeColumns</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line226"><br/></div><div id="line227"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line228"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line229"><br/></div><div id="line230"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line231"><pre><span class="token T_DOC_COMMENT"> * Target an entire row for text decoration</span></pre></div><div id="line232"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line233"><pre><span class="token T_DOC_COMMENT"> * @param integer $index</span></pre></div><div id="line234"><pre><span class="token T_DOC_COMMENT"> * @return Table</span></pre></div><div id="line235"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line236"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">row</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_STRING">int</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$index</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">null</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line237"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line238"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">accessRow</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$index</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line239"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line240"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line241"><br/></div><div id="line242"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line243"><pre><span class="token T_DOC_COMMENT"> * Make the first row the header row</span></pre></div><div id="line244"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line245"><pre><span class="token T_DOC_COMMENT"> * @return Table</span></pre></div><div id="line246"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line247"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">setFirstRowAsHeader</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line248"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line249"><pre><span class="token T_WHITESPACE"> </span><span class="token T_FOREACH">foreach</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_WHITESPACE"> </span><span class="token T_AS">as</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$k</span><span class="token T_WHITESPACE"> </span><span class="token T_DOUBLE_ARROW">=></span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$r</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line250"><pre><span class="token T_WHITESPACE"> </span><span class="token T_IF">if</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$r</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">isHeader</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line251"><pre><span class="token T_WHITESPACE"> </span><span class="token T_UNSET">unset</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_VARIABLE">$k</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line252"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line253"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line254"><br/></div><div id="line255"><pre><span class="token T_WHITESPACE"> </span><span class="token T_IF">if</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_ISSET">isset</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_LNUMBER">0</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line256"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_PHPDOX_OPEN_SQUARE">[</span><span class="token T_LNUMBER">0</span><span class="token T_PHPDOX_CLOSE_SQUARE">]</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">setHeader</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line257"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line258"><br/></div><div id="line259"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line260"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line261"><br/></div><div id="line262"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line263"><pre><span class="token T_DOC_COMMENT"> * Set the character used to separate the header row from the body</span></pre></div><div id="line264"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line265"><pre><span class="token T_DOC_COMMENT"> * @param String $char</span></pre></div><div id="line266"><pre><span class="token T_DOC_COMMENT"> * @param boolean $pushToRows</span></pre></div><div id="line267"><pre><span class="token T_DOC_COMMENT"> * @return Table</span></pre></div><div id="line268"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line269"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">setHeaderLineCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_STRING">String</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$char</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">bool</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$pushToRows</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">true</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line270"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line271"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">headerLineCharacter</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_NEW">new</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">Text</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_STRING">substr</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$char</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_LNUMBER">0</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_LNUMBER">1</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line272"><pre><span class="token T_WHITESPACE"> </span><span class="token T_IF">if</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$pushToRows</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line273"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">pushCharactersToRows</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line274"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line275"><br/></div><div id="line276"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line277"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line278"><br/></div><div id="line279"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line280"><pre><span class="token T_DOC_COMMENT"> * Set the (decorated) character used to separate columns</span></pre></div><div id="line281"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line282"><pre><span class="token T_DOC_COMMENT"> * @param String $char</span></pre></div><div id="line283"><pre><span class="token T_DOC_COMMENT"> * @param boolean $pushToRows</span></pre></div><div id="line284"><pre><span class="token T_DOC_COMMENT"> * @return Table</span></pre></div><div id="line285"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line286"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">setPipeCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_STRING">String</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$char</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">bool</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$pushToRows</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">true</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line287"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line288"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">pipeCharacter</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_NEW">new</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">Text</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_STRING">substr</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$char</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_LNUMBER">0</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_LNUMBER">1</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line289"><pre><span class="token T_WHITESPACE"> </span><span class="token T_IF">if</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$pushToRows</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line290"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">pushCharactersToRows</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line291"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line292"><br/></div><div id="line293"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line294"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line295"><br/></div><div id="line296"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line297"><pre><span class="token T_DOC_COMMENT"> * Set the charater used to separate body rows</span></pre></div><div id="line298"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line299"><pre><span class="token T_DOC_COMMENT"> * @param String $char</span></pre></div><div id="line300"><pre><span class="token T_DOC_COMMENT"> * @param boolean $pushToRows</span></pre></div><div id="line301"><pre><span class="token T_DOC_COMMENT"> * @return Table</span></pre></div><div id="line302"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line303"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PUBLIC">public</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">setRowLineCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_STRING">String</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$char</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">bool</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$pushToRows</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">true</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line304"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line305"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rowLineCharacter</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_EQUAL">=</span><span class="token T_WHITESPACE"> </span><span class="token T_NEW">new</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">Text</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_STRING">substr</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$char</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_LNUMBER">0</span><span class="token T_PHPDOX_COMMA">,</span><span class="token T_WHITESPACE"> </span><span class="token T_LNUMBER">1</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line306"><pre><span class="token T_WHITESPACE"> </span><span class="token T_IF">if</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$pushToRows</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line307"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">pushCharactersToRows</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line308"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line309"><br/></div><div id="line310"><pre><span class="token T_WHITESPACE"> </span><span class="token T_RETURN">return</span><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$this</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line311"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line312"><br/></div><div id="line313"><pre><span class="token T_WHITESPACE"> </span><span class="token T_DOC_COMMENT">/**</span></pre></div><div id="line314"><pre><span class="token T_DOC_COMMENT"> * Push the separation characters down to the rows</span></pre></div><div id="line315"><pre><span class="token T_DOC_COMMENT"> *</span></pre></div><div id="line316"><pre><span class="token T_DOC_COMMENT"> * @return void</span></pre></div><div id="line317"><pre><span class="token T_DOC_COMMENT"> */</span></pre></div><div id="line318"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PRIVATE">private</span><span class="token T_WHITESPACE"> </span><span class="token T_FUNCTION">function</span><span class="token T_WHITESPACE"> </span><span class="token T_STRING">pushCharactersToRows</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span></pre></div><div id="line319"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line320"><pre><span class="token T_WHITESPACE"> </span><span class="token T_FOREACH">foreach</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">rows</span><span class="token T_WHITESPACE"> </span><span class="token T_AS">as</span><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_AMPERSAND">&</span><span class="token T_VARIABLE">$row</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_OPEN_CURLY">{</span></pre></div><div id="line321"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">setRowLineCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">getRowLineCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line322"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">setHeaderLineCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">getHeaderLineCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line323"><pre><span class="token T_WHITESPACE"> </span><span class="token T_VARIABLE">$row</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">setPipeCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_VARIABLE">$this</span><span class="token T_OBJECT_OPERATOR">-></span><span class="token T_STRING">getPipeCharacter</span><span class="token T_PHPDOX_OPEN_BRACKET">(</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_CLOSE_BRACKET">)</span><span class="token T_PHPDOX_SEMICOLON">;</span></pre></div><div id="line324"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line325"><pre><span class="token T_WHITESPACE"> </span><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div><div id="line326"><pre><span class="token T_WHITESPACE"> </span></pre></div><div id="line327"><pre><span class="token T_PHPDOX_CLOSE_CURLY">}</span></pre></div></td></tr></table></section></div><footer><span>Generated using phpDox 0.12.0 - Copyright (C) 2010 - 2019 by Arne Blankerts and Contributors</span></footer></body></html>
|