<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/book.componere.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'en',
  ),
  'this' => 
  array (
    0 => 'class.componere-patch.php',
    1 => 'Componere\\Patch',
    2 => 'The Componere\\Patch class',
  ),
  'up' => 
  array (
    0 => 'book.componere.php',
    1 => 'Componere',
  ),
  'prev' => 
  array (
    0 => 'componere-definition.getclosures.php',
    1 => 'Componere\\Definition::getClosures',
  ),
  'next' => 
  array (
    0 => 'componere-patch.construct.php',
    1 => 'Componere\\Patch::__construct',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'en',
    'path' => 'reference/componere/componere.patch.xml',
  ),
  'history' => 
  array (
  ),
  'extra_header_links' => 
  array (
    'rel' => 'alternate',
    'href' => '/manual/en/feeds/class.componere-patch.atom',
    'type' => 'application/atom+xml',
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="class.componere-patch" class="reference">

 <h1 class="title">The Componere\Patch class</h1>
 

 <div class="partintro"><p class="verinfo">(Componere 2 &gt;= 2.1.0)</p>


  <div class="section" id="componere-patch.intro">
   <h2 class="title">Introduction</h2>
   <p class="simpara">
    The Patch class allows the programmer to change the type of an instance at runtime without registering a new Definition
   </p>
   <p class="simpara">
    When a Patch is destroyed it is reverted, so that instances that were patched during the lifetime of the Patch are restored to their formal type.
   </p>
  </div>


  <div class="section" id="componere-patch.synopsis">
   <h2 class="title">Class synopsis</h2>


   <div class="classsynopsis">
    <span class="ooclass"><strong class="classname"></strong></span>


    <div class="classsynopsisinfo">
     <span class="ooclass">
      <span class="modifier">final</span>
      <span class="modifier">class</span> <strong class="classname">Componere\Patch</strong>
     </span>

     <span class="ooclass">
      <span class="modifier">extends</span>
       <a href="class.componere-abstract-definition.php" class="classname">Componere\Abstract\Definition</a>
     </span>
     {</div>


    <div class="classsynopsisinfo classsynopsisinfo_comment">/* Constructors */</div>
    <div class="constructorsynopsis dc-description">
   <span class="modifier">public</span> <span class="methodname"><a href="componere-patch.construct.php" class="methodname">__construct</a></span>(<span class="methodparam"><span class="type"><a href="language.types.object.php" class="type object">object</a></span> <code class="parameter">$instance</code></span>)</div>
<div class="constructorsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="componere-patch.construct.php" class="methodname">__construct</a></span>(<span class="methodparam"><span class="type"><a href="language.types.object.php" class="type object">object</a></span> <code class="parameter">$instance</code></span>, <span class="methodparam"><span class="type"><a href="language.types.array.php" class="type array">array</a></span> <code class="parameter">$interfaces</code></span>)</div>


    <div class="classsynopsisinfo classsynopsisinfo_comment">/* Methods */</div>
    <div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="componere-patch.apply.php" class="methodname">apply</a></span>(): <span class="type"><a href="language.types.void.php" class="type void">void</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="componere-patch.revert.php" class="methodname">revert</a></span>(): <span class="type"><a href="language.types.void.php" class="type void">void</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="componere-patch.isapplied.php" class="methodname">isApplied</a></span>(): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="componere-patch.derive.php" class="methodname">derive</a></span>(<span class="methodparam"><span class="type"><a href="language.types.object.php" class="type object">object</a></span> <code class="parameter">$instance</code></span>): <span class="type">Patch</span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="componere-patch.getclosure.php" class="methodname">getClosure</a></span>(<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$name</code></span>): <span class="type"><a href="class.closure.php" class="type Closure">Closure</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="componere-patch.getclosures.php" class="methodname">getClosures</a></span>(): <span class="type"><a href="language.types.array.php" class="type array">array</a></span></div>


    <div class="classsynopsisinfo classsynopsisinfo_comment">/* Inherited methods */</div>
    <div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="componere-abstract-definition.addinterface.php" class="methodname">Componere\Abstract\Definition::addInterface</a></span>(<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$interface</code></span>): <span class="type">Definition</span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="componere-abstract-definition.addmethod.php" class="methodname">Componere\Abstract\Definition::addMethod</a></span>(<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$name</code></span>, <span class="methodparam"><span class="type"><a href="class.componere-method.php" class="type Componere\Method">Componere\Method</a></span> <code class="parameter">$method</code></span>): <span class="type">Definition</span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="componere-abstract-definition.addtrait.php" class="methodname">Componere\Abstract\Definition::addTrait</a></span>(<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$trait</code></span>): <span class="type">Definition</span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span> <span class="methodname"><a href="componere-abstract-definition.getreflector.php" class="methodname">Componere\Abstract\Definition::getReflector</a></span>(): <span class="type"><a href="class.reflectionclass.php" class="type ReflectionClass">ReflectionClass</a></span></div>


   }</div>


  </div>

 </div>

  




  




  




  






  




  




  





<h2>Table of Contents</h2><ul class="chunklist chunklist_reference"><li><a href="componere-patch.construct.php">Componere\Patch::__construct</a> — Patch Construction</li><li><a href="componere-patch.apply.php">Componere\Patch::apply</a> — Application</li><li><a href="componere-patch.revert.php">Componere\Patch::revert</a> — Reversal</li><li><a href="componere-patch.isapplied.php">Componere\Patch::isApplied</a> — State Detection</li><li><a href="componere-patch.derive.php">Componere\Patch::derive</a> — Patch Derivation</li><li><a href="componere-patch.getclosure.php">Componere\Patch::getClosure</a> — Get Closure</li><li><a href="componere-patch.getclosures.php">Componere\Patch::getClosures</a> — Get Closures</li></ul>
</div>
<?php manual_footer($setup); ?>