Verzeichnisstruktur phpBB-3.2.0


Veröffentlicht
06.01.2017

So funktioniert es


Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück

Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis.
Auf den Verzeichnisnamen klicken, dies zeigt nur das Verzeichnis mit Inhalt an

      (Beispiel Datei-Icons)

Auf das Icon klicken um den Quellcode anzuzeigen

TraitUsageInterface.php

Zuletzt modifiziert: 09.10.2024, 12:57 - Dateigröße: 4.34 KiB


 001  <?php
 002  /**
 003   * Zend Framework (http://framework.zend.com/)
 004   *
 005   * @link      http://github.com/zendframework/zf2 for the canonical source repository
 006   * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 007   * @license   http://framework.zend.com/license/new-bsd New BSD License
 008   */
 009  namespace Zend\Code\Generator;
 010   
 011  interface TraitUsageInterface
 012  {
 013      /**
 014       * Add a class to "use" classes
 015       *
 016       * @param  string $use
 017       * @param  string|null $useAlias
 018       * @return self
 019       */
 020      public function addUse($use, $useAlias = null);
 021   
 022      /**
 023       * Returns the "use" classes
 024       *
 025       * @return array
 026       */
 027      public function getUses();
 028   
 029      /**
 030       * Add trait takes an array of trait options or string as arguments.
 031       *
 032       * Array Format:
 033       * key: traitName value: String
 034       *
 035       * key: aliases value: array of arrays
 036       *      key: method value: @see addTraitAlias
 037       *      key: alias value: @see addTraitAlias
 038       *      key: visibility value: @see addTraitAlias
 039       *
 040       * key: insteadof value: array of arrays
 041       *      key: method value: @see self::addTraitOverride
 042       *      key: traitToReplace value: @see self::addTraitOverride
 043       *
 044       * @param mixed $trait String | Array
 045       * @return self
 046       */
 047      public function addTrait($trait);
 048   
 049      /**
 050       * Add multiple traits.  Trait can be an array of trait names or array of trait
 051       * configurations
 052       *
 053       * @param array $traitName Array of string names or configurations (@see addTrait)
 054       * @return self
 055       */
 056      public function addTraits(array $traits);
 057   
 058      /**
 059       * Check to see if the class has a trait defined
 060       *
 061       * @param strint $traitName
 062       * @return bool
 063       */
 064      public function hasTrait($traitName);
 065   
 066      /**
 067       * Get a list of trait names
 068       *
 069       * @return array
 070       */
 071      public function getTraits();
 072   
 073      /**
 074       * Remove a trait by its name
 075       *
 076       * @param $traitName
 077       */
 078      public function removeTrait($traitName);
 079   
 080      /**
 081       * Add a trait alias.  This will be used to generate the AS portion of the use statement.
 082       *
 083       * $method:
 084       * This method provides 2 ways for defining the trait method.
 085       * Option 1: String
 086       * Option 2: Array
 087       * key: traitName value: name of trait
 088       * key: method value: trait method
 089       *
 090       * $alias:
 091       * Alias is a string representing the new method name.
 092       *
 093       * $visibilty:
 094       * ReflectionMethod::IS_PUBLIC | ReflectionMethod::IS_PRIVATE| ReflectionMethod::IS_PROTECTED
 095       *
 096       * @param mixed $method String or Array
 097       * @param string $alias
 098       * @param int $visiblity
 099       */
 100      public function addTraitAlias($method, $alias, $visibility = null);
 101   
 102      /**
 103       * @return array
 104       */
 105      public function getTraitAliases();
 106   
 107      /**
 108       * Add a trait method override.  This will be used to generate the INSTEADOF portion of the use
 109       * statement.
 110       *
 111       * $method:
 112       * This method provides 2 ways for defining the trait method.
 113       * Option 1: String Format: <trait name>::<method name>
 114       * Option 2: Array
 115       * key: traitName value: trait name
 116       * key: method value: method name
 117       *
 118       * $traitToReplace:
 119       * The name of the trait that you wish to supersede.
 120       *
 121       * This method provides 2 ways for defining the trait method.
 122       * Option 1: String of trait to replace
 123       * Option 2: Array of strings of traits to replace
 124   
 125       * @param mixed $method
 126       * @param mixed $traitToReplace
 127       */
 128      public function addTraitOverride($method, $traitsToReplace);
 129   
 130      /**
 131       * Remove an override for a given trait::method
 132       *
 133       * $method:
 134       * This method provides 2 ways for defining the trait method.
 135       * Option 1: String Format: <trait name>::<method name>
 136       * Option 2: Array
 137       * key: traitName value: trait name
 138       * key: method value: method name
 139       *
 140       * $overridesToRemove:
 141       * The name of the trait that you wish to remove.
 142       *
 143       * This method provides 2 ways for defining the trait method.
 144       * Option 1: String of trait to replace
 145       * Option 2: Array of strings of traits to replace
 146       *
 147       * @param $traitAndMethod
 148       * @param null $overridesToRemove
 149       * @return $this
 150       */
 151      public function removeTraitOverride($method, $overridesToRemove = null);
 152   
 153      /**
 154       * Return trait overrides
 155       *
 156       * @return array
 157       */
 158      public function getTraitOverrides();
 159  }
 160