… for autocompletion and proper phpdoc recognition.
/**
* matches
- * @var array<integer>
+ * @var integer[]
*/
public $matches = array();
/**
* shown columns
- * @var array<string>
+ * @var string[]
*/
public $columns = array('registrationDate', 'lastActivityTime');
<?php
namespace wcf\acp\form;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\form\AbstractForm;
use wcf\system\exception\IllegalLinkException;
abstract class AbstractBulkProcessingForm extends AbstractForm {
/**
* object action object type types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
public $actions = array();
/**
* object condition object type types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
public $conditions = array();
<?php
namespace wcf\acp\form;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\data\ad\AdAction;
use wcf\form\AbstractForm;
/**
* list of available location object types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
public $locationObjectTypes = array();
/**
* list of available locations
- * @var array<string>
+ * @var string[]
*/
public $locations = array();
/**
* list of attributes
- * @var array<object>
+ * @var object[]
*/
public $attributes = array();
/**
* list of native bbcodes
- * @var array<string>
+ * @var string[]
*/
public static $nativeBBCodes = array('b', 'i', 'u', 's', 'sub', 'sup', 'list', 'align', 'color', 'size', 'font', 'url', 'img', 'email', 'table');
<?php
namespace wcf\acp\form;
+use wcf\data\dashboard\box\DashboardBox;
use wcf\data\dashboard\box\DashboardBoxList;
use wcf\data\object\type\ObjectTypeCache;
use wcf\form\AbstractForm;
/**
* list of available dashboard boxes
- * @var array<\wcf\data\dashboard\box\DashboardBox>
+ * @var DashboardBox[]
*/
public $boxes = array();
/**
* list of enabled box ids
- * @var array<integer>
+ * @var integer[]
*/
public $enabledBoxes = array();
/**
* list of available importers
- * @var array<string>
+ * @var string[]
*/
public $importers = array();
use wcf\form\AbstractForm;
use wcf\system\acl\ACLHandler;
use wcf\system\exception\UserInputException;
+use wcf\system\label\object\type\ILabelObjectTypeHandler;
+use wcf\system\label\object\type\LabelObjectTypeContainer;
use wcf\system\language\I18nHandler;
use wcf\system\WCF;
use wcf\util\StringUtil;
/**
* list of label object type handlers
- * @var array<\wcf\system\label\object\type\ILabelObjectTypeHandler>
+ * @var ILabelObjectTypeHandler[]
*/
public $labelObjectTypes = array();
/**
* list of label object type containers
- * @var array<\wcf\system\label\object\type\LabelObjectTypeContainer>
+ * @var LabelObjectTypeContainer[]
*/
public $labelObjectTypeContainers = array();
<?php
namespace wcf\acp\form;
+use wcf\data\language\Language;
use wcf\data\language\LanguageEditor;
use wcf\form\AbstractForm;
use wcf\system\exception\UserInputException;
/**
* list of available languages
- * @var array<\wcf\data\language\Language>
+ * @var Language[]
*/
public $languages = array();
/**
* selected packages
- * @var array<string>
+ * @var string[]
*/
public $selectedPackages = array();
/**
* available packages
- * @var array<string>
+ * @var string[]
*/
public $packages = array();
<?php
namespace wcf\acp\form;
+use wcf\data\language\Language;
use wcf\data\language\LanguageEditor;
use wcf\form\AbstractForm;
use wcf\system\exception\SystemException;
/**
* list of available languages
- * @var array<\wcf\data\language\Language>
+ * @var Language[]
*/
public $languages = array();
<?php
namespace wcf\acp\form;
+use wcf\data\language\Language;
use wcf\data\language\LanguageEditor;
use wcf\form\AbstractForm;
use wcf\system\cache\builder\LanguageCacheBuilder;
/**
* ids of selected available languages
- * @var array<integer>
+ * @var integer[]
*/
public $languageIDs = array();
/**
* list of available content languages
- * @var array<\wcf\data\language\Language>
+ * @var Language[]
*/
public $languages = array();
/**
* list pf pre-defined CSS class names
- * @var array<string>
+ * @var string[]
*/
public $availableCssClassNames = array(
'info',
use wcf\form\AbstractForm;
use wcf\system\cache\builder\UserNotificationEventCacheBuilder;
use wcf\system\exception\UserInputException;
+use wcf\system\user\notification\event\IUserNotificationEvent;
use wcf\system\user\notification\UserNotificationHandler;
use wcf\system\WCF;
/**
* list of notification events
- * @var array<array>
+ * @var IUserNotificationEvent[][]
*/
public $events = null;
/**
* list of settings by event
- * @var array<array>
+ * @var mixed[][]
*/
public $settings = array();
/**
* list of valid options for the mail notification type.
- * @var array<string>
+ * @var string[]
*/
protected static $validMailNotificationTypes = array('none', 'instant', 'daily');
/**
* data of the uploaded package
- * @var array<string>
+ * @var string[]
*/
public $uploadPackage = '';
/**
* list of group ids
- * @var array<intewer>
+ * @var integer[]
*/
public $groupIDs = array();
/**
* list of excluded subscriptions
- * @var array<integer>
+ * @var integer[]
*/
public $excludedSubscriptionIDs = array();
/**
* list of available currencies
- * @var array<string>
+ * @var string[]
*/
public $availableCurrencies = array();
use wcf\data\package\Package;
use wcf\data\style\StyleAction;
use wcf\data\style\StyleEditor;
+use wcf\data\template\group\TemplateGroup;
use wcf\data\template\group\TemplateGroupList;
use wcf\form\AbstractForm;
use wcf\system\event\EventHandler;
/**
* list of available font families
- * @var array<string>
+ * @var string[]
*/
public $availableFontFamilies = [
'Arial, Helvetica, sans-serif' => 'Arial',
/**
* list of available template groups
- * @var array<\wcf\data\template\group\TemplateGroup>
+ * @var TemplateGroup[]
*/
public $availableTemplateGroups = [];
/**
* list of available units
- * @var array<string>
+ * @var string[]
*/
public $availableUnits = ['px', 'em', '%', 'pt'];
/**
* list of color variables
- * @var array<string>
+ * @var string[]
*/
public $colors = [];
/**
* list of variables and their value
- * @var array<string>
+ * @var string[]
*/
public $variables = [];
/**
* list of specialized variables
- * @var array<string>
+ * @var string[]
*/
public $specialVariables = [];
/**
* upload data
- * @var array<string>
+ * @var string[]
*/
public $source = array();
/**
* synonyms
- * @var array<string>
+ * @var string[]
*/
public $synonyms = array();
<?php
namespace wcf\acp\form;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\data\object\type\ObjectTypeEditor;
use wcf\form\AbstractForm;
/**
* points to objectType
- * @var array<integer>
+ * @var integer[]
*/
public $points = array();
/**
* valid object types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
public $objectTypes = array();
/**
* user group ids
- * @var array<integer>
+ * @var integer[]
*/
public $groupIDs = [];
/**
* visible languages
- * @var array<integer>
+ * @var integer[]
*/
public $visibleLanguages = [];
<?php
namespace wcf\acp\form;
use wcf\data\user\group\UserGroup;
+use wcf\data\user\User;
use wcf\data\user\UserAction;
use wcf\data\user\UserEditor;
use wcf\form\AbstractForm;
/**
* ids of the relevant users
- * @var array<integer>
+ * @var integer[]
*/
public $userIDs = array();
/**
* ids of the assigned user groups
- * @var array<integer>
+ * @var integer[]
*/
public $groupIDs = array();
/**
* relevant users
- * @var array<\wcf\data\user\User>
+ * @var User[]
*/
public $users = array();
/**
* assigned user groups
- * @var array<\wcf\data\user\group\UserGroup>
+ * @var UserGroup[]
*/
public $groups = array();
<?php
namespace wcf\acp\form;
+use wcf\data\user\User;
use wcf\form\AbstractForm;
use wcf\system\clipboard\ClipboardHandler;
use wcf\system\edit\EditHistoryManager;
/**
* ids of the relevant users
- * @var array<integer>
+ * @var integer[]
*/
public $userIDs = array();
/**
* relevant users
- * @var array<\wcf\data\user\User>
+ * @var User[]
*/
public $users = array();
<?php
namespace wcf\acp\form;
+use wcf\data\user\User;
use wcf\form\AbstractForm;
use wcf\system\clipboard\ClipboardHandler;
use wcf\system\database\util\PreparedStatementConditionBuilder;
/**
* ids of the users whose email addresses are exported
- * @var array<integer>
+ * @var integer[]
*/
public $userIDs = array();
/**
* users whose email addresses are exported
- * @var array<\wcf\data\user\User>
+ * @var User[]
*/
public $users = array();
/**
* list of selectable user groups
- * @var array<\wcf\data\user\group\UserGroup>
+ * @var UserGroup[]
*/
public $userGroups = array();
<?php
namespace wcf\acp\form;
+use wcf\data\user\group\option\category\UserGroupOptionCategory;
use wcf\data\user\group\option\category\UserGroupOptionCategoryList;
use wcf\data\user\group\option\UserGroupOption;
use wcf\data\user\group\option\UserGroupOptionAction;
/**
* list of parsed form elements per group
- * @var array<string>
+ * @var string[]
*/
public $formElements = array();
/**
* list of accessible groups
- * @var array<\wcf\data\user\group\UserGroup>
+ * @var UserGroup[]
*/
public $groups = array();
/**
* list of parent categories
- * @var array<\wcf\data\user\group\option\category\UserGroupOptionCategory>
+ * @var UserGroupOptionCategory[]
*/
public $parentCategories = array();
/**
* list of group ids
- * @var array<integer>
+ * @var integer[]
*/
public $groupIDs = array();
/**
* list of groups
- * @var array<\wcf\data\user\group\UserGroup>
+ * @var UserGroup[]
*/
public $groups = array();
/**
* list of user ids
- * @var array<integer>
+ * @var integer[]
*/
public $userIDs = array();
<?php
namespace wcf\acp\form;
use wcf\data\object\type\ObjectTypeCache;
+use wcf\data\user\User;
use wcf\data\user\UserAction;
use wcf\form\AbstractForm;
use wcf\system\clipboard\ClipboardHandler;
/**
* ids of the relevant users
- * @var array<integer>
+ * @var integer[]
*/
public $userIDs = array();
/**
* relevant users
- * @var array<\wcf\data\user\User>
+ * @var User[]
*/
public $users = array();
/**
* ids of merge users (without destination user)
- * @var array<integer>
+ * @var integer[]
*/
public $mergedUserIDs = array();
/**
* list of pre-defined css class names
- * @var array<string>
+ * @var string[]
*/
public $availableCssClassNames = array(
'yellow',
/**
* shown columns
- * @var array<string>
+ * @var string[]
*/
public $columns = array('registrationDate', 'lastActivityTime');
/**
* available file types
- * @var array<string>
+ * @var string[]
*/
public $availableFileTypes = array();
<?php
namespace wcf\acp\page;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\page\AbstractPage;
use wcf\system\WCF;
/**
* list of object types per package id
- * @var array<array>
+ * @var ObjectType[]
*/
public $objectTypes = array();
/**
* available logfiles
- * @var array<string>
+ * @var string[]
*/
public $logFiles = array();
<?php
namespace wcf\acp\page;
+use wcf\data\package\update\server\PackageUpdateServer;
use wcf\data\package\update\server\PackageUpdateServerList;
use wcf\data\package\Package;
use wcf\data\package\PackageCache;
/**
* list of installed update servers (Plugin-Store only)
- * @var array<\wcf\data\package\update\server\PackageUpdateServer>
+ * @var PackageUpdateServer[]
*/
public $updateServers = array();
/**
* list of supported WCF major releases (Plugin-Store)
- * @var array<string>
+ * @var string[]
*/
public $wcfMajorReleases = array();
<?php
namespace wcf\acp\page;
use wcf\data\category\Category;
+use wcf\data\smiley\category\SmileyCategory;
use wcf\data\smiley\SmileyCache;
use wcf\page\MultipleLinkPage;
use wcf\system\exception\IllegalLinkException;
/**
* available categories
- * @var array<\wcf\data\category\Category>
+ * @var SmileyCategory[]
*/
public $categories = array();
/**
* list of object ids
- * @var array<integer>
+ * @var integer[]
*/
protected $objectIDs = array();
/**
* additional parameters
- * @var array<mixed>
+ * @var mixed[]
*/
protected $parameters = array();
/**
* needed modules to execute this action
- * @var array<string>
+ * @var string[]
*/
public $neededModules = array();
/**
* needed permissions to execute this action
- * @var array<string>
+ * @var string[]
*/
public $neededPermissions = array();
/**
* list of quote ids
- * @var array<string>
+ * @var string[]
*/
public $quoteIDs = array();
/**
* list of object types
- * @var array<string>
+ * @var string[]
*/
public $objectTypes = array();
/**
* list of option ids
- * @var array<integer>
+ * @var integer[]
*/
public $optionIDs = array();
/**
* Adds a user vote.
*
- * @param array<mixed> $returnValues
+ * @param mixed[] $returnValues
*/
protected function vote(array &$returnValues) {
$pollAction = new \wcf\data\poll\PollAction(array($this->poll), 'vote', array('optionIDs' => $this->optionIDs));
/**
* list of object ids
- * @var array<integer>
+ * @var integer[]
*/
protected $objectIDs = array();
/**
* list of object editors
- * @var array<\wcf\data\DatabaseObjectEditor>
+ * @var DatabaseObjectEditor[]
*/
protected $objects = array();
/**
* multi-dimensional array of parameters required by an action
- * @var array<array>
+ * @var mixed[][]
*/
protected $parameters = array();
/**
* list of permissions required to create objects
- * @var array<string>
+ * @var string[]
*/
protected $permissionsCreate = array();
/**
* list of permissions required to delete objects
- * @var array<string>
+ * @var string[]
*/
protected $permissionsDelete = array();
/**
* list of permissions required to update objects
- * @var array<string>
+ * @var string[]
*/
protected $permissionsUpdate = array();
/**
* disallow requests for specified methods if the origin is not the ACP
- * @var array<string>
+ * @var string[]
*/
protected $requireACP = array();
/**
* Resets cache if any of the listed actions is invoked
- * @var array<string>
+ * @var string[]
*/
protected $resetCache = array('create', 'delete', 'toggle', 'update', 'updatePosition');
/**
* allows guest access for all specified methods, by default guest access
* is completely disabled
- * @var array<string>
+ * @var string[]
*/
protected $allowGuestAccess = array();
/**
* Initialize a new DatabaseObject-related action.
*
- * @param array<mixed> $objects
+ * @param mixed[] $objects
* @param string $action
* @param array $parameters
* @throws SystemException
/**
* Sets the database objects.
*
- * @param array<\wcf\data\DatabaseObject> $objects
+ * @param DatabaseObject[] $objects
*/
public function setObjects(array $objects) {
$this->objects = $objects;
/**
* Returns a list of currently loaded objects.
*
- * @return array<\wcf\data\IEditableObject>
+ * @return DatabaseObjectEditor[]
*/
public function getObjects() {
return $this->objects;
/**
* result objects
- * @var array<\wcf\data\DatabaseObject>
+ * @var DatabaseObject[]
*/
public $objects = array();
/**
* ids of result objects
- * @var array<integer>
+ * @var integer[]
*/
public $objectIDs = null;
/**
* list of index to object relation
- * @var array<integer>
+ * @var integer[]
*/
protected $indexToObject = null;
/**
* Returns the object ids of the list.
*
- * @return array<integer>
+ * @return integer[]
*/
public function getObjectIDs() {
return $this->objectIDs;
/**
* Sets the object ids.
*
- * @param array<integer> $objectIDs
+ * @param integer[] $objectIDs
*/
public function setObjectIDs(array $objectIDs) {
$this->objectIDs = array_merge($objectIDs);
/**
* Returns the objects of the list.
*
- * @return array<\wcf\data\DatabaseObject>
+ * @return DatabaseObject[]
*/
public function getObjects() {
return $this->objects;
/**
* Returns DatabaseObject-related object ids.
*
- * @return array<integer>
+ * @return integer[]
*/
public function getObjectIDs();
/**
* Returns action-related parameters.
*
- * @return array<array>
+ * @return mixed[]
*/
public function getParameters();
/**
* Returns a list of category names.
*
- * @return array<string>
+ * @return string[]
*/
public function getCategories();
}
* Checks if the active user has the given permissions for this object and
* throws a PermissionDeniedException if they don't have one of the permissions.
*
- * @param array<string> $permissions
+ * @param string[] $permissions
*/
public function checkPermissions(array $permissions);
* Returns the value of all object data variables.
*
* @deprecated This method was introduced for a function in AJAXProxy that is deprecated.
- * @return array array<value>
+ * @return mixed[]
*/
public function getData();
/**
* Deletes active sessions of the given users.
*
- * @param array<integer> $userIDs
+ * @param integer[] $userIDs
*/
public static function deleteUserSessions(array $userIDs = array()) {
$conditionBuilder = new PreparedStatementConditionBuilder();
<?php
namespace wcf\data\ad;
+use wcf\data\condition\Condition;
use wcf\data\object\type\ObjectTypeCache;
use wcf\data\DatabaseObject;
use wcf\system\condition\ConditionHandler;
/**
* Returns the conditions of the ad.
*
- * @return array<\wcf\data\condition\Condition>
+ * @return Condition[]
*/
public function getConditions() {
return ConditionHandler::getInstance()->getConditions('com.woltlab.wcf.condition.ad', $this->adID);
/**
* list of all available application directories
- * @var array<string>
+ * @var string[]
*/
protected static $directories = null;
/**
* Returns a list of available mime types.
*
- * @return array<string>
+ * @return string[]
*/
public function getAvailableFileTypes() {
$fileTypes = array();
/**
* Returns attachment statistics.
*
- * @return array<integer>
+ * @return integer[]
*/
public function getStats() {
$sql = "SELECT COUNT(*) AS count,
/**
* Sets the permissions for attachment access.
*
- * @param array<boolean> $permissions
+ * @param boolean[] $permissions
*/
public function setPermissions(array $permissions) {
foreach ($this->objects as $attachment) {
/**
* Returns the objects of the list.
*
- * @return array<\wcf\data\DatabaseObject>
+ * @return Attachment[]
*/
public function getGroupedObjects($objectID) {
if (isset($this->groupedObjects[$objectID])) {
<?php
namespace wcf\data\bbcode;
+use wcf\data\bbcode\attribute\BBCodeAttribute;
use wcf\system\cache\builder\BBCodeCacheBuilder;
use wcf\system\SingletonFactory;
class BBCodeCache extends SingletonFactory {
/**
* cached bbcodes
- * @var array<\wcf\data\bbcode\BBCode>
+ * @var BBCode[]
*/
protected $cachedBBCodes = array();
/**
* list of known highlighters
- * @var array<string>
+ * @var string[]
*/
protected $highlighters = array();
/**
* Returns all bbcodes.
*
- * @return array<\wcf\data\bbcode\BBCode>
+ * @return BBCode[]
*/
public function getBBCodes() {
return $this->cachedBBCodes;
* Returns all attributes of a bbcode.
*
* @param string $tag
- * @return array<\wcf\data\bbcode\attribute\BBCodeAttribute>
+ * @return BBCodeAttribute[]
*/
public function getBBCodeAttributes($tag) {
return $this->cachedBBCodes[$tag]->getAttributes();
/**
* Returns a list of known highlighters.
*
- * @return array<string>
+ * @return string[]
*/
public function getHighlighters() {
if (empty($this->highlighters)) {
* Reads attributes by assigned bbcode.
*
* @param \wcf\data\bbcode\BBCode $bbcode
- * @return array<\wcf\data\bbcode\attribute\BBCodeAttribute>
+ * @return BBCodeAttribute[]
*/
public static function getAttributesByBBCode(BBCode $bbcode) {
$attributeList = new BBCodeAttributeList();
/**
* cached providers
- * @var array<\wcf\data\bbcode\media\MediaProvider>
+ * @var BBCodeMediaProvider[]
*/
protected static $cache = null;
/**
* Loads the provider cache.
*
- * @return array<\wcf\data\bbcode\media\MediaProvider>
+ * @return BBCodeMediaProvider[]
*/
public static function getCache() {
if (self::$cache === null) {
abstract class AbstractDecoratedCategory extends DatabaseObjectDecorator {
/**
* list of all child categories of this category
- * @var array<\wcf\data\category\Category>
+ * @var Category[]
*/
protected $childCategories = null;
/**
* list of all parent category generations of this category
- * @var array<\wcf\data\category\AbstractDecoratedCategory>
+ * @var AbstractDecoratedCategory[]
*/
protected $parentCategories = null;
class Category extends ProcessibleDatabaseObject implements IPermissionObject, IRouteController {
/**
* list of all child categories of this category
- * @var array<\wcf\data\category\Category>
+ * @var Category[]
*/
protected $childCategories = null;
/**
* list of all parent category generations of this category
- * @var array<\wcf\data\category\Category>
+ * @var Category[]
*/
protected $parentCategories = null;
/**
* acl permissions of this category for the active user
* @deprecated
- * @var array<boolean>
+ * @var boolean[]
*/
protected $permissions = null;
/**
* Returns the child categories of this category.
*
- * @return array<\wcf\data\category\Category>
+ * @return Category[]
*/
public function getChildCategories() {
if ($this->childCategories === null) {
/**
* Returns the parent categories of this category.
*
- * @return array<\wcf\data\category\Category>
+ * @return Category[]
*/
public function getParentCategories() {
if ($this->parentCategories === null) {
class CategoryNode extends DatabaseObjectDecorator implements \RecursiveIterator, \Countable {
/**
* child category nodes
- * @var array<\wcf\data\category\CategoryNode>
+ * @var CategoryNode[]
*/
protected $children = array();
class UncachedCategoryNodeTree extends CategoryNodeTree {
/**
* locally cached categories
- * @var array<\wcf\data\category\Category>
+ * @var Category[]
*/
protected $categoryCache = array();
/**
* Sets an item as marked.
*
- * @return array<array>
+ * @return mixed[]
*/
public function mark() {
ClipboardHandler::getInstance()->mark($this->parameters['objectIDs'], $this->objectTypeID);
/**
* Unsets an item as marked.
*
- * @return array<array>
+ * @return mixed[]
*/
public function unmark() {
ClipboardHandler::getInstance()->unmark($this->parameters['objectIDs'], $this->objectTypeID);
/**
* Returns the list of marked items.
*
- * @return array<array>
+ * @return mixed[]
*/
public function getMarkedItems() {
return $this->getEditorItems();
/**
* Unmarks all items of a type.
*
- * @return array<string>
+ * @return string[]
*/
public function unmarkAll() {
ClipboardHandler::getInstance()->unmarkAll($this->objectTypeID);
/**
* Returns a list of clipboard editor items grouped by type name.
*
- * @return array<array>
+ * @return mixed[]
*/
protected function getEditorItems() {
$data = ClipboardHandler::getInstance()->getEditorItems($this->parameters['pageClassName'], $this->parameters['pageObjectID']);
/**
* Saves the descriptions of the cronjob in language items.
*
- * @param array<string> $descriptions
+ * @param string[] $descriptions
* @param boolean $deleteOldDescriptions
* @since 2.2
*/
class DashboardBoxAction extends AbstractDatabaseObjectAction implements ISortableAction {
/**
* list of available dashboard boxes
- * @var array<\wcf\data\dashboard\box\DashboardBox>
+ * @var DashboardBox[]
*/
public $boxes = array();
/**
* box structure
- * @var array<integer>
+ * @var integer[]
*/
public $boxStructure = array();
/**
* Returns the names of all events listened to.
*
- * @return array<string>
+ * @return string[]
* @since 2.2
*/
public function getEventNames() {
/**
* list of labels
- * @var array<\wcf\data\label\Label>
+ * @var Label[]
*/
protected $labels = array();
/**
* list of permissions by type
- * @var array<array>
+ * @var integer[][]
*/
protected $permissions = array(
'group' => array(),
/**
* list of index to object relation
- * @var array<integer>
+ * @var integer[]
*/
protected $indexToObject = null;
/**
* Returns a list of label ids.
*
- * @return array<integer>
+ * @return integer[]
*/
public function getLabelIDs() {
return array_keys($this->labels);
/**
* Returns a list of labels.
*
- * @return array<\wcf\data\label\Label>
+ * @return Label[]
*/
public function getLabels() {
return $this->labels;
/**
* list of language items
- * @var array<string>
+ * @var string[]
*/
protected $items = array();
/**
* list of dynamic language items
- * @var array<string>
+ * @var string[]
*/
protected $dynamicItems = array();
/**
* Returns a list of available languages.
*
- * @return array<\wcf\data\language\Language>
+ * @return Language[]
*/
public function getLanguages() {
return LanguageFactory::getInstance()->getLanguages();
/**
* Write the languages files.
*
- * @param array<integer> $languageCategoryIDs
+ * @param integer[] $languageCategoryIDs
*/
protected function writeLanguageFiles(array $languageCategoryIDs) {
$conditions = new PreparedStatementConditionBuilder();
/**
* Returns like details.
*
- * @return array<string>
+ * @return string[]
*/
public function getLikeDetails() {
$sql = "SELECT userID, likeValue
/**
* Returns a list of outstanding queues.
*
- * @return array<string>
+ * @return string[]
*/
public function getOutstandingQueues() {
$objectTypeIDs = ModerationQueueManager::getInstance()->getObjectTypeIDs(array_keys(ModerationQueueManager::getInstance()->getDefinitions()));
/**
* Returns the user assign form.
*
- * @return array<string>
+ * @return string[]
*/
public function getAssignUserForm() {
$assignedUser = ($this->moderationQueueEditor->assignedUserID) ? new User($this->moderationQueueEditor->assignedUserID) : null;
/**
* Returns the data for the newly assigned user.
*
- * @return array<string>
+ * @return string[]
*/
public function assignUser() {
$data = array('assignedUserID' => ($this->parameters['assignedUserID'] ?: null));
/**
* Dismisses a certain notice.
*
- * @return array<integer>
+ * @return integer[]
*/
public function dismiss() {
if (WCF::getUser()->userID) {
<?php
namespace wcf\data\object\type;
+use wcf\data\DatabaseObject;
/**
* Any object type provider should implement this interface.
/**
* Gets like objects by their IDs.
*
- * @param array<integer> $objectIDs
- * @return array<\wcf\data\DatabaseObject>
+ * @param integer[] $objectIDs
+ * @return DatabaseObject[]
*/
public function getObjectsByIDs(array $objectIDs);
}
/**
* Returns the names of proporties that should be serialized.
*
- * @return array<string>
+ * @return string[]
*/
public final function __sleep() {
// 'processor' isn't returned since it can be an instance of
<?php
namespace wcf\data\object\type;
+use wcf\data\object\type\definition\ObjectTypeDefinition;
use wcf\system\cache\builder\ObjectTypeCacheBuilder;
use wcf\system\SingletonFactory;
class ObjectTypeCache extends SingletonFactory {
/**
* object type definitions
- * @var array<\wcf\data\object\type\definition\ObjectTypeDefinition>
+ * @var ObjectTypeDefinition[]
*/
protected $definitions = array();
/**
* object type definition ids grouped by category name
- * @var array<integer>
+ * @var integer[]
*/
protected $definitionsByCategory = array();
/**
* object type definitions sorted by name
- * @var array<\wcf\data\object\type\definition\ObjectTypeDefinition>
+ * @var ObjectTypeDefinition[]
*/
protected $definitionsByName = array();
/**
* object types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
protected $objectTypes = array();
* category name is invalid.
*
* @param string $categoryName
- * @return array<\wcf\data\object\type\definition\ObjectTypeDefinition>
+ * @return ObjectTypeDefinition[]
*/
public function getDefinitionsByCategory($categoryName) {
if (isset($this->definitionsByCategory[$categoryName])) {
* Returns the list of object type with the given definition name.
*
* @param string $definitionName
- * @return array<\wcf\data\object\type\ObjectType>
+ * @return ObjectType[]
*/
public function getObjectTypes($definitionName) {
if (isset($this->groupedObjectTypes[$definitionName])) {
/**
* Returns a list of options.
*
- * @return array<\wcf\data\option\Option>
+ * @return Option[]
*/
public static function getOptions() {
$sql = "SELECT *
class Package extends DatabaseObject {
/**
* list of packages that this package requires
- * @var array<\wcf\data\package\Package>
+ * @var Package[]
*/
protected $dependencies = null;
/**
* list of packages that require this package
- * @var array<\wcf\data\package\Package>
+ * @var Package[]
*/
protected $dependentPackages = null;
/**
* list of packages that were given as required packages during installation
- * @var array<\wcf\data\package\Package>
+ * @var Package[]
*/
protected $requiredPackages = null;
/**
* list of ids of packages which are required by another package
- * @var array<integer>
+ * @var integer[]
*/
protected static $requiredPackageIDs = null;
* returned packages are the packages given in the <requiredpackages> tag
* in the package.xml of this package.
*
- * @return array<\wcf\data\package\Package>
+ * @return Package[]
*/
public function getRequiredPackages() {
if ($this->requiredPackages === null) {
/**
* Returns a list of packages dependent from current package.
*
- * @return array<\wcf\data\package\Package>
+ * @return Package[]
*/
public function getDependentPackages() {
if ($this->dependentPackages === null) {
class PackageCache extends SingletonFactory {
/**
* list of cached packages
- * @var array<array>
+ * @var mixed[][]
*/
protected $packages = array();
/**
* Returns all packages.
*
- * @return array<\wcf\data\package\Package>
+ * @return Package[]
*/
public function getPackages() {
return $this->packages;
/**
* Prepares a new package installation queue.
*
- * @return array<integer>
+ * @return integer[]
*/
public function prepareQueue() {
$processNo = PackageInstallationQueue::getNewProcessNo();
/**
* Returns list of purchase buttons.
*
- * @return array<string>
+ * @return string[]
*/
public function getPurchaseButtons() {
$objectTypeID = ObjectTypeCache::getInstance()->getObjectTypeIDByName('com.woltlab.wcf.payment.type', 'com.woltlab.wcf.payment.type.paidSubscription');
/**
* list of poll options
- * @var array<\wcf\data\poll\option\PollOption>
+ * @var PollOption[]
*/
protected $options = array();
* Returns a list of poll options.
*
* @param boolean $isResultDisplay
- * @return array<\wcf\data\poll\option\PollOption>
+ * @return PollOption[]
*/
public function getOptions($isResultDisplay = false) {
$this->loadOptions();
/**
* list of data values returned upon a keep alive request
- * @var array<mixed>
+ * @var mixed[]
*/
public $keepAliveData = array();
* Updates session's last activity time to prevent it from expiring. In addition this method
* will return updated counters for notifications and 3rd party components.
*
- * @return array<mixed>
+ * @return mixed[]
*/
public function keepAlive() {
// ignore sessions created by this request
/**
* cached smiley categories
- * @var array<\wcf\data\smiley\category\SmileyCategory>
+ * @var SmileyCategory[]
*/
protected $cachedCategories = array();
/**
* enabled smiley categories with at least one smiley
- * @var array<\wcf\data\smiley\category\SmileyCategory>
+ * @var SmileyCategory[]
*/
protected $visibleCategories = null;
/**
* Returns all smiley categories.
*
- * @return array<\wcf\data\smiley\category\SmileyCategory>
+ * @return SmileyCategory[]
*/
public function getCategories() {
return $this->cachedCategories;
/**
* Returns all enabled smiley categories with at least one smiley.
*
- * @return array<\wcf\data\smiley\category\SmileyCategory>
+ * @return SmileyCategory[]
*/
public function getVisibleCategories() {
if ($this->visibleCategories === null) {
<?php
namespace wcf\data\smiley\category;
use wcf\data\category\AbstractDecoratedCategory;
+use wcf\data\smiley\Smiley;
use wcf\data\smiley\SmileyCache;
use wcf\data\ITraversableObject;
use wcf\system\exception\SystemException;
/**
* list of index to object relation
- * @var array<integer>
+ * @var integer[]
*/
protected $indexToObject = null;
/**
* list of assigned smilies
- * @var array<\wcf\data\smiley\Smiley>
+ * @var Smiley[]
*/
public $smilies = null;
/**
* list of style variables
- * @var array<string>
+ * @var string[]
*/
protected $variables = array();
/**
* Returns the styles variables of this style.
*
- * @return array<string>
+ * @return string[]
*/
public function getVariables() {
$this->loadVariables();
/**
* Changes user style.
*
- * @return array<string>
+ * @return string[]
*/
public function changeStyle() {
StyleHandler::getInstance()->changeStyle($this->style->styleID);
* Saves localized style descriptions.
*
* @param \wcf\data\style\StyleEditor $styleEditor
- * @param array<string> $descriptions
+ * @param string[] $descriptions
*/
protected static function saveLocalizedDescriptions(StyleEditor $styleEditor, array $descriptions) {
// localize package information
/**
* Sets the variables of a style.
*
- * @param array<string> $variables
+ * @param string[] $variables
*/
public function setVariables(array $variables = array()) {
// delete old variables
*
* @param string $tags
* @param string $separators
- * @return array<string>
+ * @return string[]
*/
public static function splitString($tags, $separators = ',;') {
return array_unique(ArrayUtil::trim(preg_split('/['.preg_quote($separators).']/', $tags)));
/**
* Takes a list of tags and builds a comma separated string from it.
*
- * @param array<mixed> $tags
+ * @param mixed[] $tags
* @param string $separator
* @return string
*/
/**
* Unmarks tags.
*
- * @param array<integer> $tagIDs
+ * @param integer[] $tagIDs
* @since 2.2
*/
protected function unmarkItems(array $tagIDs = array()) {
/**
* Creates a select list of all template groups.
*
- * @param array<integer> $ignore Array of template group ids that should be excluded with all of their children
+ * @param integer[] $ignore Array of template group ids that should be excluded with all of their children
* @param integer $initialDepth Specifies the initial indentation depth of the list
* @return array
*/
class TeamList extends UserProfileList {
/**
* teams included in the list
- * @var array<\wcf\data\user\group\Team>
+ * @var Team[]
*/
protected $teams = array();
/**
* Returns the teams in the list.
*
- * @return array<\wcf\data\user\group\Team>
+ * @return Team[]
*/
public function getTeams() {
return $this->teams;
<?php
namespace wcf\data\user;
+use wcf\data\language\Language;
use wcf\data\user\group\UserGroup;
use wcf\data\DatabaseObject;
use wcf\data\IUserContent;
/**
* group data and permissions
- * @var array<array>
+ * @var mixed[][]
*/
protected $groupData = null;
/**
* urls of this gravatar
- * @var array<string>
+ * @var string[]
*/
protected $url = array();
class UserAvatar extends DatabaseObject implements IUserAvatar {
/**
* needed avatar thumbnail sizes
- * @var array<integer>
+ * @var integer[]
*/
public static $avatarThumbnailSizes = array(32, 96, 128);
/**
* list of user group members
- * @var array<\wcf\data\user\UserProfile>
+ * @var UserProfile[]
*/
protected $members = array();
/**
* Returns the list of user group members
*
- * @return array<\wcf\data\user\UserProfile>
+ * @return UserProfile[]
*/
public function getMembers() {
return $this->members;
/**
* group cache
- * @var array<\wcf\data\user\group\UserGroup>
+ * @var UserGroup[]
*/
protected static $cache = null;
/**
* list of accessible groups for active user
- * @var array<integer>
+ * @var integer[]
*/
protected static $accessibleGroups = null;
/**
* group options of this group
- * @var array<array>
+ * @var mixed[][]
*/
protected $groupOptions = null;
/**
* Returns group ids by given type.
*
- * @param array<integer> $types
- * @return array<integer>
+ * @param integer[] $types
+ * @return integer[]
*/
public static function getGroupIDsByType(array $types) {
self::getCache();
/**
* Returns groups by given type. Returns all groups if no types given.
*
- * @param array<integer> $types
- * @param array<integer> $invalidGroupTypes
- * @return array<\wcf\data\user\group\UserGroup>
+ * @param integer[] $types
+ * @param integer[] $invalidGroupTypes
+ * @return UserGroup[]
*/
public static function getGroupsByType(array $types = array(), array $invalidGroupTypes = array()) {
self::getCache();
/**
* Returns a list of accessible groups.
*
- * @param array<integer> $groupTypes
- * @param array<integer> $invalidGroupTypes
- * @return array<\wcf\data\user\group\UserGroup>
+ * @param integer[] $groupTypes
+ * @param integer[] $invalidGroupTypes
+ * @return UserGroup[]
*/
public static function getAccessibleGroups(array $groupTypes = array(), array $invalidGroupTypes = array()) {
$groups = self::getGroupsByType($groupTypes, $invalidGroupTypes);
<?php
namespace wcf\data\user\group\assignment;
+use wcf\data\condition\Condition;
use wcf\data\user\group\UserGroup;
use wcf\data\DatabaseObject;
use wcf\system\condition\ConditionHandler;
/**
* Returns the conditions of the automatic assignement to a user group.
*
- * @return array<\wcf\data\condition\Condition>
+ * @return Condition[]
*/
public function getConditions() {
return ConditionHandler::getInstance()->getConditions('com.woltlab.wcf.condition.userGroupAssignment', $this->assignmentID);
/**
* Creates a simple notification without stacking support, applies to legacy notifications too.
*
- * @return array<array>
+ * @return mixed[][]
*/
public function createDefault() {
$notifications = [];
/**
* Creates a notification or adds another author to an existing one.
*
- * @return array<array>
+ * @return mixed[][]
*/
public function createStackable() {
// get existing notifications
/**
* Loads user notifications.
*
- * @return array<array>
+ * @return mixed[]
*/
public function getOutstandingNotifications() {
$notifications = UserNotificationHandler::getInstance()->getMixedNotifications();
use wcf\data\DatabaseObjectDecorator;
use wcf\system\cache\builder\UserOptionCacheBuilder;
use wcf\system\exception\SystemException;
+use wcf\system\option\user\IUserOptionOutput;
use wcf\util\StringUtil;
/**
/**
* list of output objects
- * @var array<\wcf\system\option\user\IUserOptionOutput>
+ * @var IUserOptionOutput[]
*/
public static $outputObjects = array();
/**
* cached user options
- * @var array<\wcf\data\user\option\ViewableUserOption>
+ * @var ViewableUserOption[]
*/
public static $userOptions = array();
/**
* additional fields
- * @var array<mixed>
+ * @var mixed[]
*/
public $additionalFields = array();
<?php
namespace wcf\form;
+use wcf\data\language\Language;
+use wcf\data\smiley\category\SmileyCategory;
+use wcf\data\smiley\Smiley;
use wcf\data\smiley\SmileyCache;
use wcf\system\attachment\AttachmentHandler;
use wcf\system\bbcode\BBCodeHandler;
/**
* list of available content languages
- * @var array<\wcf\data\language\Language>
+ * @var Language[]
*/
public $availableContentLanguages = array();
/**
* list of default smilies
- * @var array<\wcf\data\smiley\Smiley>
+ * @var Smiley[]
*/
public $defaultSmilies = array();
/**
* list of smiley categories
- * @var array<\wcf\data\smiley\category\SmileyCategory>
+ * @var SmileyCategory[]
*/
public $smileyCategories = array();
use wcf\data\object\type\ObjectTypeCache;
use wcf\system\exception\UserInputException;
use wcf\system\menu\user\UserMenu;
+use wcf\system\user\notification\event\IUserNotificationEvent;
use wcf\system\user\notification\UserNotificationHandler;
use wcf\system\WCF;
/**
* list of notification events
- * @var array<array>
+ * @var IUserNotificationEvent[]
*/
public $events = null;
/**
* list of settings by event
- * @var array<array>
+ * @var mixed[][]
*/
public $settings = array();
/**
* list of valid options for the mail notification type.
- * @var array<string>
+ * @var string[]
*/
protected static $validMailNotificationTypes = array('none', 'instant', 'daily');
class SearchForm extends AbstractCaptchaForm {
/**
* list of additional conditions
- * @var array<string>
+ * @var string[]
*/
public $additionalConditions = array();
/**
* selected object types
- * @var array<string>
+ * @var string[]
*/
public $selectedObjectTypes = array();
/**
* Returns user ids.
*
- * @return array<integer>
+ * @return integer[]
*/
public function getUserIDs() {
$userIDs = array();
<?php
namespace wcf\form;
+use wcf\data\language\Language;
+use wcf\data\style\Style;
use wcf\data\user\option\category\UserOptionCategory;
use wcf\data\user\UserAction;
use wcf\system\exception\IllegalLinkException;
/**
* list of available content languages
- * @var array<\wcf\data\language\Language>
+ * @var Language[]
*/
public $availableContentLanguages = array();
/**
* list of available languages
- * @var array<\wcf\data\language\Language>
+ * @var Language[]
*/
public $availableLanguages = array();
/**
* list of available styles
- * @var array<\wcf\data\style\Style>
+ * @var Style[]
*/
public $availableStyles = array();
/**
* list of content language ids
- * @var array<integer>
+ * @var integer[]
*/
public $contentLanguageIDs = array();
/**
* parsed contents of $_REQUEST['id']
- * @var array<integer>
+ * @var integer[]
*/
public $objectIDs = array();
/**
* needed modules to view this page
- * @var array<string>
+ * @var string[]
*/
public $neededModules = array();
/**
* needed permissions to view this page
- * @var array<string>
+ * @var string[]
*/
public $neededPermissions = array();
/**
* list of mime types which belong to files that are displayed inline
- * @var array<string>
+ * @var string[]
*/
public static $inlineMimeTypes = array('image/gif', 'image/jpeg', 'image/png', 'image/x-png', 'application/pdf', 'image/pjpeg');
/**
* list of available definitions
- * @var array<string>
+ * @var string[]
*/
public $availableDefinitions = array();
/**
* list of outstanding notifications
- * @var array<array>
+ * @var mixed[][]
*/
public $notifications = array();
/**
* list of valid sort fields
- * @var array<string>
+ * @var string[]
*/
public $validSortFields = array();
<?php
namespace wcf\page;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\data\tag\Tag;
use wcf\system\exception\IllegalLinkException;
class TaggedPage extends MultipleLinkPage {
/**
* list of available taggable object types
- * @var array<\wcf\data\object\type\ObjectTypeCache>
+ * @var ObjectType[]
*/
public $availableObjectTypes = array();
/**
* list of index to object relation
- * @var array<integer>
+ * @var integer[]
*/
protected $indexToObject = null;
*
* @param string $string
* @param integer $flags
- * @return array<string>
+ * @return string[]
*/
public function split($string, $flags = self::FLAGS_DEFAULT) {
$splitFlags = 0;
/**
* list of currently loaded application objects
- * @var array<\wcf\system\application\IApplication>
+ * @var IApplication[]
*/
protected static $applicationObjects = array();
/**
* list of unique instances of each core object
- * @var array<\wcf\system\SingletonFactory>
+ * @var SingletonFactory[]
*/
protected static $coreObject = array();
/**
* list of cached core objects
- * @var array<array>
+ * @var string[]
*/
protected static $coreObjectCache = array();
/**
* list of acl option categories sorted by their object type id and name
- * @var array<array>
+ * @var ACLOptionCategory[][]
*/
protected $categories = array();
* Removes ACL values from database.
*
* @param integer $objectTypeID
- * @param array<integer> $objectIDs
+ * @param integer[] $objectIDs
* @param \wcf\data\acl\option\category\ACLOptionCategory $category
*/
public function removeValues($objectTypeID, array $objectIDs, ACLOptionCategory $category = null) {
<?php
namespace wcf\system\ad;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\system\cache\builder\AdCacheBuilder;
use wcf\system\exception\SystemException;
/**
* list of ad location object types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
protected $objectTypes = array();
/**
* Returns all available ad location object types.
*
- * @return array<\wcf\data\object\type\ObjectType>
+ * @return ObjectType[]
*/
public function getLocationObjectTypes($categoryName = null) {
if ($categoryName === null) {
/**
* Returns the list of available locations used to be used for selections.
*
- * @return array<string>
+ * @return string[]
*/
public function getLocationSelection() {
$objectTypes = $this->objectTypes;
<?php
namespace wcf\system\attachment;
+use wcf\data\DatabaseObject;
use wcf\system\WCF;
use wcf\util\ArrayUtil;
abstract class AbstractAttachmentObjectType implements IAttachmentObjectType {
/**
* cached objects
- * @var array<\wcf\data\DatabaseObject>
+ * @var DatabaseObject[]
*/
protected $cachedObjects = array();
*
* @param string $objectType
* @param integer $newObjectID
- * @param array<integer> $oldObjectIDs
+ * @param integer[] $oldObjectIDs
*/
public static function transferAttachments($objectType, $newObjectID, array $oldObjectIDs) {
$conditions = new PreparedStatementConditionBuilder();
* Removes all attachments for given object ids by type.
*
* @param string $objectType
- * @param array<integer> $objectIDs
+ * @param integer[] $objectIDs
*/
public static function removeAttachments($objectType, array $objectIDs) {
$attachmentList = new AttachmentList();
/**
* Returns a formatted list of the allowed file extensions.
*
- * @return array<string>
+ * @return string[]
*/
public function getFormattedAllowedExtensions() {
$extensions = $this->getAllowedExtensions();
<?php
namespace wcf\system\attachment;
+use wcf\data\attachment\Attachment;
/**
* Any attachment object type should implement this interface.
/**
* Returns the allowed file extensions.
*
- * @return array<string>
+ * @return string[]
*/
public function getAllowedExtensions();
/**
* Caches the data of the given container objects.
*
- * @param array<integer> $objectIDs
+ * @param integer[] $objectIDs
*/
public function cacheObjects(array $objectIDs);
/**
* Loads the permissions for given attachments.
*
- * @param array<\wcf\data\attachment\Attachment> $attachments
+ * @param Attachment[] $attachments
*/
public function setPermissions(array $attachments);
}
<?php
namespace wcf\system\bbcode;
+use wcf\data\bbcode\BBCode;
use wcf\data\bbcode\BBCodeCache;
use wcf\system\SingletonFactory;
class BBCodeHandler extends SingletonFactory {
/**
* list of BBCodes allowed for usage
- * @var array<\wcf\data\bbcode\BBCode>
+ * @var BBCode[]
*/
protected $allowedBBCodes = array();
/**
* list of BBCodes displayed as buttons
- * @var array<\wcf\data\bbcode\BBCode>
+ * @var BBCode[]
*/
protected $buttonBBCodes = array();
/**
* list of BBCodes which contain raw code (disabled BBCode parsing)
- * @var array<\wcf\data\bbcode\BBCode>
+ * @var BBCode[]
*/
protected $sourceBBCodes = null;
/**
* Returns all bbcodes.
*
- * @return array<\wcf\data\bbcode\BBCode>
+ * @return BBCode[]
*/
public function getBBCodes() {
return BBCodeCache::getInstance()->getBBCodes();
/**
* Returns a list of BBCodes displayed as buttons.
*
- * @return array<\wcf\data\bbcode\BBCode>
+ * @return BBCode[]
*/
public function getButtonBBCodes() {
$buttons = array();
/**
* Sets the allowed BBCodes.
*
- * @param array<string>
+ * @param string[]
*/
public function setAllowedBBCodes(array $bbCodes) {
$this->allowedBBCodes = $bbCodes;
/**
* Returns a list of BBCodes which contain raw code (disabled BBCode parsing)
*
- * @return array<\wcf\data\bbcode\BBCode>
+ * @return BBCode[]
*/
public function getSourceBBCodes() {
if (empty($this->allowedBBCodes)) {
/**
* Returns a list of known highlighters.
*
- * @return array<string>
+ * @return string[]
*/
public function getHighlighters() {
return BBCodeCache::getInstance()->getHighlighters();
<?php
namespace wcf\system\bbcode;
use wcf\data\bbcode\attribute\BBCodeAttribute;
+use wcf\data\bbcode\BBCode;
use wcf\data\bbcode\BBCodeCache;
use wcf\system\SingletonFactory;
class BBCodeParser extends SingletonFactory {
/**
* list of bbcodes
- * @var array<\wcf\data\bbcode\BBCode>
+ * @var BBCode[]
*/
protected $bbcodes = array();
* BBCodes and returns a list of used disallowed BBCodes.
*
* @param string $text
- * @param array<string> $allowedBBCodes
- * @return array<string>
+ * @param string[] $allowedBBCodes
+ * @return string[]
*/
public function validateBBCodes($text, array $allowedBBCodes) {
// if all BBCodes are allowed, return directly
/**
* already used ids for line numbers to prevent duplicate ids in the output
- * @var array<string>
+ * @var string[]
*/
private static $codeIDs = array();
class KeywordHighlighter extends SingletonFactory {
/**
* search keywords
- * @var array<string>
+ * @var string[]
*/
protected $keywords = array();
/**
* search query parameters
- * @var array<string>
+ * @var string[]
*/
protected static $searchQueryKeys = array(
'q', // google, msn, altavista
<?php
namespace wcf\system\bbcode;
use wcf\data\bbcode\attribute\BBCodeAttribute;
+use wcf\data\smiley\Smiley;
use wcf\data\smiley\SmileyCache;
use wcf\system\event\EventHandler;
use wcf\util\StringUtil;
class MessageParser extends BBCodeParser {
/**
* list of smilies
- * @var array<\wcf\data\smiley\Smiley>
+ * @var Smiley[]
*/
protected $smilies = array();
/**
* list of allowed bbcode tags
- * @var array<string>
+ * @var string[]
*/
public $allowedBBCodes = null;
* Preparses the given text.
*
* @param string $text
- * @param array<string> $allowedBBCodes
+ * @param string[] $allowedBBCodes
* @return string
*/
public function parse($text, array $allowedBBCodes = null) {
<?php
namespace wcf\system\bbcode;
+use wcf\data\smiley\Smiley;
use wcf\data\smiley\SmileyCache;
use wcf\system\event\EventHandler;
use wcf\system\SingletonFactory;
/**
* list of smilies
- * @var array<\wcf\data\smiley\Smiley>
+ * @var Smiley[]
*/
protected $smilies = array();
/**
* cached URLs
- * @var array<string>
+ * @var string[]
*/
protected $cachedURLs = array();
/**
* cached e-mails
- * @var array<string>
+ * @var string[]
*/
protected $cachedEmails = array();
class CssHighlighter extends Highlighter {
/**
* temporary string replacement map for properties that can also be tags
- * @var array<string>
+ * @var string[]
*/
public static $duplicates = array(
'table:' => 't@@able:',
/**
* keywords for an added line, the + is used in unified diffs, the > in
* normal diffs
- * @var array<string>
+ * @var string[]
*/
protected $add = array("+", ">");
/**
* keywords for an deleted line, the - is used in unified diff, the < in
* normal diffs
- * @var array<string>
+ * @var string[]
*/
protected $delete = array("-", "<");
/**
* splitter in changes for normal diff
- * @var array<string>
+ * @var string[]
*/
protected $splitter = array("---");
/**
* keywords for the line info, the @ is used in unified diffs, the numbers
* in normal diffs
- * @var array<string>
+ * @var string[]
*/
protected $info = array("@", '0', '1', '2', '3', '4', '5', '6', '7', '8', '9');
/**
* comment end delimiter
- * @var array<string>
+ * @var string[]
*/
protected $commentEnd = array("*/");
/**
* comment start delimiter
- * @var array<string>
+ * @var string[]
*/
protected $commentStart = array("/*");
/**
* escape sequence
- * @var array<string>
+ * @var string[]
*/
protected $escapeSequence = array("\\");
/**
* categorized keywords
- * @var array<string>
+ * @var string[]
*/
protected $keywords1 = array();
/**
* categorized keywords
- * @var array<string>
+ * @var string[]
*/
protected $keywords2 = array();
/**
* categorized keywords
- * @var array<string>
+ * @var string[]
*/
protected $keywords3 = array();
/**
* categorized keywords
- * @var array<string>
+ * @var string[]
*/
protected $keywords4 = array();
/**
* categorized keywords
- * @var array<string>
+ * @var string[]
*/
protected $keywords5 = array();
/**
* list of arithmetic operators
- * @var array<string>
+ * @var string[]
*/
protected $operators = array();
/**
* list of quote marks
- * @var array<string>
+ * @var string[]
*/
protected $quotes = array("'", '"');
/**
* list of separator sequences
- * @var array<string>
+ * @var string[]
*/
protected $separators = array();
/**
* inline comment sequence
- * @var array<string>
+ * @var string[]
*/
protected $singleLineComment = array("//");
abstract class AbstractUserGroupsUserBulkProcessingAction extends AbstractUserBulkProcessingAction {
/**
* list of available user groups
- * @var array<\wcf\data\user\group\UserGroup>
+ * @var UserGroup[]
*/
public $availableUserGroups = [ ];
/**
* ids of selected user groups
- * @var array<integer>
+ * @var integer[]
*/
public $userGroupIDs = [ ];
class ACPMenuCacheBuilder extends AbstractCacheBuilder {
/**
* list of option categories which directly contain options
- * @var array<string>
+ * @var string[]
*/
protected $categoriesWithOptions = array();
/**
* list of option categories grouped by the name of their parent category
- * @var array<\wcf\data\option\category\OptionCategory>
+ * @var OptionCategory[]
*/
protected $categoryStructure = array();
/**
* Returns the list with top option categories which contain options.
*
- * @return array<\wcf\data\option\category\OptionCategory>
+ * @return OptionCategory[]
*/
protected function getTopOptionCategories() {
$optionCategoryList = new OptionCategoryList();
abstract class AbstractCacheBuilder extends SingletonFactory implements ICacheBuilder {
/**
* list of cache resources by index
- * @var array<array>
+ * @var mixed[][]
*/
protected $cache = array();
class TagCloudCacheBuilder extends AbstractCacheBuilder {
/**
* list of tags
- * @var array<\wcf\data\tag\TagCloudTag>
+ * @var TagCloudTag[]
*/
protected $tags = array();
/**
* Parses a list of language ids. If one given language id evaluates to '0' all ids will be discarded.
*
- * @param array<integer> $parameters
- * @return array<integer>
+ * @param integer[] $parameters
+ * @return integer[]
*/
protected function parseLanguageIDs(array $parameters) {
// handle special '0' value
namespace wcf\system\cache\builder;
use wcf\system\database\util\PreparedStatementConditionBuilder;
use wcf\system\exception\SystemException;
+use wcf\system\option\user\group\IUserGroupOptionType;
use wcf\system\WCF;
use wcf\util\StringUtil;
class UserGroupPermissionCacheBuilder extends AbstractCacheBuilder {
/**
* list of used group option type objects
- * @var array<\wcf\system\option\group\IGroupOptionType>
+ * @var IUserGroupOptionType[]
*/
protected $typeObjects = [];
/**
* name of the object types associated with categories of this type (the
* key is the definition name and value the object type name)
- * @var array<string>
+ * @var string[]
*/
protected $objectTypes = array();
<?php
namespace wcf\system\category;
use wcf\data\category\Category;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\system\cache\builder\CategoryCacheBuilder;
use wcf\system\exception\SystemException;
class CategoryHandler extends SingletonFactory {
/**
* cached categories
- * @var array<\wcf\data\category\Category>
+ * @var Category[]
*/
protected $categories = array();
/**
* category ids grouped by the object type they belong to
- * @var array<array>
+ * @var integer[][]
*/
protected $objectTypeCategoryIDs = array();
/**
* mapes the names of the category object types to the object type ids
- * @var array<integer>
+ * @var integer[]
*/
protected $objectTypeIDs = array();
/**
* list of category object types
- * @var array<\wcf\data\object\type>
+ * @var ObjectType[]
*/
protected $objectTypes = array();
* type is given, all categories grouped by object type are returned.
*
* @param string $objectType
- * @return array<mixed>
+ * @return mixed[]
*/
public function getCategories($objectType = null) {
$categories = array();
/**
* Returns all category object types.
*
- * @return array<\wcf\data\object\type\ObjectType>
+ * @return ObjectType[]
*/
public function getObjectTypes() {
return $this->objectTypes;
class CLICommandHandler {
/**
* list of all available commands
- * @var array<\wcf\system\cli\command\ICLICommand>
+ * @var ICLICommand[]
*/
private static $commands = array();
/**
* Returns all available commands.
*
- * @return array<\wcf\system\cli\command\ICLICommand>
+ * @return ICLICommand[]
*/
public static function getCommands() {
if (empty(self::$commands)) {
* Returns the parameterlist of the given line.
*
* @param string $line
- * @return array<string>
+ * @return string[]
*/
public static function getParameters($line) {
list ($command, $parameters) = explode(' ', $line.' ', 2);
class CLICommandNameCompleter implements Completer {
/**
* names of all available commands
- * @var array<string>
+ * @var string[]
*/
private $commands = array();
<?php
namespace wcf\system\cli\command;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\system\database\DatabaseException;
use wcf\system\importer\ImportHandler;
/**
* list of available exporters
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
protected $exporters = array();
/**
* list of available importers
- * @var array<string>
+ * @var string[]
*/
public $importers = array();
/**
* selected data types
- * @var array<string>
+ * @var string[]
*/
public $selectedData = array();
<?php
namespace wcf\system\clipboard;
use wcf\data\object\type\ObjectTypeCache;
+use wcf\data\DatabaseObject;
use wcf\system\cache\builder\ClipboardActionCacheBuilder;
use wcf\system\cache\builder\ClipboardPageCacheBuilder;
use wcf\system\database\util\PreparedStatementConditionBuilder;
/**
* cached list of clipboard item types
- * @var array<array>
+ * @var mixed[][]
*/
protected $cache = null;
/**
* list of marked items
- * @var array<array>
+ * @var DatabaseObject[][]
*/
protected $markedItems = null;
*
* @param string $page
* @param integer $pageObjectID
- * @return array<array>
+ * @return mixed[][]
* @throws SystemException
*/
public function getEditorItems($page, $pageObjectID) {
<?php
namespace wcf\system\clipboard\action;
use wcf\data\clipboard\action\ClipboardAction;
+use wcf\data\DatabaseObject;
use wcf\system\clipboard\ClipboardEditorItem;
use wcf\system\exception\SystemException;
use wcf\system\WCF;
abstract class AbstractClipboardAction implements IClipboardAction {
/**
* list of the clipboard actions which are executed by the action class
- * @var array<string>
+ * @var string[]
*/
protected $actionClassActions = array();
/**
* relevant database objects
- * @var array<\wcf\data\DatabaseObject>
+ * @var DatabaseObject[]
*/
protected $objects = array();
/**
* list of the supported clipboard actions
- * @var array<string>
+ * @var string[]
*/
protected $supportedActions = array();
<?php
namespace wcf\system\clipboard\action;
use wcf\data\clipboard\action\ClipboardAction;
+use wcf\data\DatabaseObject;
/**
* Basic interface for all clipboard editor actions.
* Returns editor item for the clipboard action with the given name or null
* if the action is not applicable to the given objects.
*
- * @param array<\wcf\data\DatabaseObject> $objects
+ * @param DatabaseObject[] $objects
* @param \wcf\data\clipboard\action\ClipboardAction $action
* @return \wcf\system\clipboard\ClipboardEditorItem
*/
/**
* Returns the ids of the tags which can be deleted.
*
- * @return array<integer>
+ * @return integer[]
*/
protected function validateDelete() {
if (!WCF::getSession()->getPermission('admin.content.tag.canManageTag')) {
/**
* Returns the ids of the tags which can be set as synonyms.
*
- * @return array<integer>
+ * @return integer[]
*/
protected function validateSetAsSynonyms() {
if (!WCF::getSession()->getPermission('admin.content.tag.canManageTag')) {
/**
* Returns the ids of the users which can be deleted.
*
- * @return array<integer>
+ * @return integer[]
*/
protected function validateDelete() {
// check permissions
/**
* Returns the ids of the users which can be banned.
*
- * @return array<integer>
+ * @return integer[]
*/
protected function validateBan() {
// check permissions
/**
* Validates accessible groups.
*
- * @return array<integer>
+ * @return integer[]
*/
protected function __validateAccessibleGroups(array $userIDs, $ignoreOwnUser = true) {
if ($ignoreOwnUser) {
/**
* Returns the ids of the users which can be sent new passwords.
*
- * @return array<integer>
+ * @return integer[]
*/
public function validateSendNewPassword() {
// check permissions
/**
* Returns the ids of the users which can be enabled.
*
- * @return array<integer>
+ * @return integer[]
* @since 2.2
*/
protected function validateEnable() {
/**
* Returns the ids of the users which can be merge.
*
- * @return array<integer>
+ * @return integer[]
* @since 2.2
*/
protected function validateMerge() {
/**
* Returns the ids of the users whose edits can be reverted.
*
- * @return array<integer>
+ * @return integer[]
*/
protected function validateRevertContentChanges() {
if (!MODULE_EDIT_HISTORY) {
use wcf\data\comment\CommentEditor;
use wcf\data\comment\CommentList;
use wcf\data\comment\StructuredCommentList;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\system\comment\manager\ICommentManager;
use wcf\system\exception\NamedUserException;
class CommentHandler extends SingletonFactory {
/**
* cached object types
- * @var array<array>
+ * @var mixed[][]
*/
protected $cache = null;
* Returns the html code for an opt group.
*
* @param string $label
- * @param array<string> $options
+ * @param string[] $options
* @return string
*/
protected function getOptGroupCode($label, array $options) {
use wcf\data\condition\Condition;
use wcf\data\condition\ConditionAction;
use wcf\data\condition\ConditionList;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\system\cache\builder\ConditionCacheBuilder;
use wcf\system\exception\SystemException;
* Creates condition objects for the object with the given id and based
* on the given condition object types.
*
- * @param integer $objectID
- * @param array<\wcf\data\object\type\ObjectType> $conditionObjectTypes
+ * @param integer $objectID
+ * @param ObjectType[] $conditionObjectTypes
*/
public function createConditions($objectID, array $conditionObjectTypes) {
foreach ($conditionObjectTypes as $objectType) {
/**
* Updates the conditions for the object with the given object id.
*
- * @param integer $objectID
- * @param array<\wcf\data\condition\Condition> $oldConditions
- * @param array<\wcf\data\object\type\ObjectType> $conditionObjectTypes
+ * @param integer $objectID
+ * @param Condition[] $oldConditions
+ * @param ObjectType[] $conditionObjectTypes
*/
public function updateConditions($objectID, array $oldConditions, array $conditionObjectTypes) {
// delete old conditions first
/**
* ids of the selected user groups the user has to be member of
- * @var array<integer>
+ * @var integer[]
*/
protected $groupIDs = array();
/**
* ids of the selected user groups the user may not be member of
- * @var array<integer>
+ * @var integer[]
*/
protected $notGroupIDs = array();
/**
* selectable user groups
- * @var array<\wcf\data\user\group\UserGroup>
+ * @var UserGroup[]
*/
protected $userGroups = null;
/**
* Returns the selectable user groups.
*
- * @return array<\wcf\data\user\group\UserGroup>
+ * @return UserGroup[]
*/
protected function getUserGroups() {
if ($this->userGroups == null) {
/**
* ids of the selected languages
- * @var array<integer>
+ * @var integer[]
*/
protected $languageIDs = array();
class CronjobScheduler extends SingletonFactory {
/**
* cached times of the next and after next cronjob execution
- * @var array<integer>
+ * @var integer[]
*/
protected $cache = array();
/**
* list of editors for outstanding cronjobs
- * @var array<\wcf\data\cronjob\CronjobEditor>
+ * @var CronjobEditor[]
*/
protected $cronjobEditors = array();
class DashboardHandler extends SingletonFactory {
/**
* list of cached dashboard boxes
- * @var array<\wcf\data\dashboard\box\DashboardBox>
+ * @var DashboardBox[]
*/
protected $boxCache = null;
/**
* configuration options for pages
- * @var array<array>
+ * @var integer[][]
*/
protected $pageCache = null;
<?php
namespace wcf\system\database\statement;
+use wcf\data\DatabaseObject;
use wcf\system\benchmark\Benchmark;
use wcf\system\database\exception\DatabaseQueryException;
use wcf\system\database\exception\DatabaseQueryExecutionException;
* Fetches the all rows from a result set into database objects.
*
* @param string $className
- * @return array<\wcf\data\DatabaseObject>
+ * @return DatabaseObject[]
*/
public function fetchObjects($className) {
$objects = array();
class SQLParser {
/**
* list of sql queries
- * @var array<string>
+ * @var string[]
*/
protected $queryArray = array();
* Deletes edit history entries.
*
* @param string $objectType
- * @param array<integer> $objectIDs
+ * @param integer[] $objectIDs
*/
public function delete($objectType, array $objectIDs) {
$objectTypeID = $this->getObjectTypeID($objectType);
/**
* Performs mass reverting of edits by the given users in the given timeframe.
*
- * @param array<integer> $userIDs
+ * @param integer[] $userIDs
* @param integer $timeframe
*/
public function bulkRevert(array $userIDs, $timeframe = 86400) {
<?php
namespace wcf\system\email;
+use wcf\system\background\job\AbstractBackgroundJob;
use wcf\system\background\job\EmailDeliveryBackgroundJob;
use wcf\system\background\BackgroundQueueHandler;
use wcf\system\email\mime\AbstractMimePart;
/**
* References header
- * @var array<\wcf\system\email\Mailbox>
+ * @var Mailbox[]
*/
protected $references = [ ];
/**
* In-Reply-To header
- * @var array<\wcf\system\email\Mailbox>
+ * @var Mailbox[]
*/
protected $inReplyTo = [ ];
/**
* Returns the email's 'In-Reply-To' message ids.
*
- * @return array<string>
+ * @return string[]
*/
public function getInReplyTo() {
return $this->inReplyTo;
/**
* Returns the email's 'References' message ids.
*
- * @return array<string>
+ * @return string[]
*/
public function getReferences() {
return $this->references;
/**
* Returns the text mime parts of this email.
*
- * @return array<\wcf\system\email\mime\TextMimePart>
+ * @return array
*/
public function getText() {
return $this->text;
/**
* Returns the attachments (i.e. the mime parts that are not a TextMimePart) of this email.
*
- * @return array<\wcf\system\email\mime\AbstractMimePart>
+ * @return array
*/
public function getAttachments() {
return $this->attachments;
/**
* Returns needed AbstractBackgroundJobs to deliver this email to every recipient.
*
- * @return array<\wcf\system\background\job\AbstractBackgroundJob>
+ * @return AbstractBackgroundJob[]
*/
public function getJobs() {
$jobs = [ ];
/**
* ESMTP features advertised by the server
- * @var array<string>
+ * @var string[]
*/
protected $features = [ ];
* @param string $message
* @param integer $errorType
* @param string $stacktrace
- * @param array $returnValues
+ * @param mixed[] $returnValues
* @param string $exceptionID
- * @param array<mixed> $returnValues
*/
public function __construct($message, $errorType = self::INTERNAL_ERROR, $stacktrace = null, $returnValues = array(), $exceptionID = '') {
if ($stacktrace === null) $stacktrace = $this->getTraceAsString();
* in the human readable error log.
* Avoid including sensitive information (such as private keys or passwords).
*
- * @return array<array>
+ * @return mixed[][]
*/
public function getExtraInformation();
}
/**
* limits for items per run
- * @var array<integer>
+ * @var integer[]
*/
protected $limits = array();
/**
* Returns the supported data types.
*
- * @return array<string>
+ * @return string[]
*/
public function getSupportedData();
class FormDocument {
/**
* list of FormElementContainer objects
- * @var array<\wcf\system\form\IFormElementContainer>
+ * @var IFormElementContainer[]
*/
protected $containers = array();
/**
* Returns assigned FormElementContainer objects.
*
- * @return array<\wcf\system\form\IFormElementContainer>
+ * @return IFormElementContainer[]
*/
public function getContainers() {
return $this->containers;
/**
* Returns a list of child elements.
*
- * @return array<\wcf\system\form\IFormElement>
+ * @return IFormElement[]
*/
public function getChildren();
abstract class AbstractFormElementContainer implements IFormElementContainer {
/**
* list of IFormElement objects
- * @var array<\wcf\system\form\IFormElement>
+ * @var IFormElement[]
*/
protected $children = array();
class ImageHandler extends SingletonFactory {
/**
* list of valid image adapters.
- * @var array<string>
+ * @var string[]
*/
protected $imageAdapters = array(
'gd' => 'wcf\system\image\adapter\GDImageAdapter',
/**
* supported relative positions
- * @var array<string>
+ * @var string[]
*/
protected $relativePositions = array(
'topLeft',
/**
* list of methods allowed for remote invoke
- * @var array<string>
+ * @var string[]
*/
public static $allowInvoke = array('resetMapping');
/**
* known smiley codes
*
- * @var array<string>
+ * @var string[]
*/
public $knownCodes = array();
<?php
namespace wcf\system\importer;
use wcf\data\user\group\UserGroup;
+use wcf\data\user\option\UserOption;
use wcf\data\user\option\UserOptionList;
use wcf\data\user\User;
use wcf\data\user\UserEditor;
/**
* ids of default notification events
- * @var array<integer>
+ * @var integer[]
*/
protected $eventIDs = array();
/**
* list of user options
- * @var array<\wcf\data\user\option\UserOption>
+ * @var UserOption[]
*/
protected $userOptions = array();
/**
* list of available user option categories
- * @var array<string>
+ * @var string[]
*/
protected $categoryCache = null;
class LabelHandler extends SingletonFactory {
/**
* cached list of object types
- * @var array<array>
+ * @var mixed[][]
*/
protected $cache = null;
/**
* list of label groups
- * @var array<\wcf\data\label\group\ViewableLabelGroup>
+ * @var ViewableLabelGroup[]
*/
protected $labelGroups = null;
/**
* Returns an array with view permissions for the labels with the given id.
*
- * @param array<integer> $labelIDs
+ * @param integer[] $labelIDs
* @return array
* @see \wcf\system\label\LabelHandler::getPermissions()
*/
/**
* Returns an array with use permissions for the labels with the given id.
*
- * @param array<integer> $labelIDs
+ * @param integer[] $labelIDs
* @return array
* @see \wcf\system\label\LabelHandler::getPermissions()
*/
* Sets labels for given object id, pass an empty array to remove all previously
* assigned labels.
*
- * @param array<integer> $labelIDs
+ * @param integer[] $labelIDs
* @param integer $objectTypeID
* @param integer $objectID
* @param boolean $validatePermissions
* Returns all assigned labels, optionally filtered to validate permissions.
*
* @param integer $objectTypeID
- * @param array<integer> $objectIds
+ * @param integer[] $objectIds
* @param boolean $validatePermissions
* @return array
*/
/**
* Returns a list of accessible label ids.
*
- * @return array<integer>
+ * @return integer[]
*/
public function getAccessibleLabelIDs() {
$labelIDs = array();
* Removes all assigned labels for given object ids.
*
* @param integer $objectTypeID
- * @param array<integer> $objectID
+ * @param integer[] $objectID
*/
public function removeLabels($objectTypeID, array $objectIDs) {
$conditions = new PreparedStatementConditionBuilder();
<?php
namespace wcf\system\label\object;
+use wcf\data\label\group\ViewableLabelGroup;
use wcf\system\exception\SystemException;
use wcf\system\label\LabelHandler;
use wcf\system\SingletonFactory;
abstract class AbstractLabelObjectHandler extends SingletonFactory implements ILabelObjectHandler {
/**
* list of available label groups
- * @var array<\wcf\data\label\group\ViewableLabelGroup>
+ * @var ViewableLabelGroup[]
*/
protected $labelGroups = array();
<?php
namespace wcf\system\label\object;
+use wcf\data\label\group\ViewableLabelGroup;
/**
* Every label object handler has to implement this interface.
* Returns a list of label group ids.
*
* @param array $parameters
- * @return array<integer>
+ * @return integer[]
*/
public function getLabelGroupIDs(array $parameters = array());
* Returns a list of label groups.
*
* @param array $parameters
- * @return array<\wcf\data\label\group\ViewableLabelGroup>
+ * @return ViewableLabelGroup[]
*/
public function getLabelGroups(array $parameters = array());
/**
* Assigns labels to an object.
*
- * @param array<integer> $labelIDs
+ * @param integer[] $labelIDs
* @param integer $objectID
* @param boolean $validatePermissions
* @see \wcf\system\label\LabelHandler::setLabels()
/**
* Returns a list of assigned labels.
*
- * @param array<integer> $objectIDs
+ * @param integer[] $objectIDs
* @param boolean $validatePermissions
- * @return array<array>
+ * @return Label[]
*/
public function getAssignedLabels(array $objectIDs, $validatePermissions = true);
}
<?php
namespace wcf\system\label\object\type;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
/**
/**
* list of object types
- * @var array<\wcf\system\label\object\type>
+ * @var ObjectType[]
*/
public $objectTypes = array();
/**
* element options
- * @var array<array>
+ * @var mixed[][]
*/
protected $elementOptions = [];
class LanguageFactory extends SingletonFactory {
/**
* language cache
- * @var array<array>
+ * @var mixed[]
*/
protected $cache = null;
<?php
namespace wcf\system\language;
+use wcf\data\language\server\LanguageServer;
use wcf\data\language\Language;
use wcf\system\database\util\PreparedStatementConditionBuilder;
use wcf\system\exception\SystemException;
/**
* Imports language variables for a language from given language servers.
*
- * @param \wcf\data\language\Language $language
- * @param array<\wcf\data\language\server\LanguageServer> $languageServers
+ * @param \wcf\data\language\Language $language
+ * @param LanguageServer[] $languageServers
*/
public function import(Language $language, array $languageServers) {
if (empty($languageServers)) return;
/**
* Returns list of installed packages and their associated version.
*
- * @return array<string>
+ * @return string[]
*/
protected function getPackageList() {
$sql = "SELECT package, packageVersion
* Imports language variables and categories.
*
* @param array $variables
- * @param array<integer> $packages
+ * @param integer[] $packages
*/
protected function importVariables(array $variables, array $packages) {
$categories = $this->importCategories($variables);
<?php
namespace wcf\system\like;
+use wcf\data\like\ViewableLike;
/**
* Default interface for viewable like providers.
/**
* Prepares a list of likes for output.
*
- * @param array<\wcf\data\like\ViewableLike> $likes
+ * @param ViewableLike[] $likes
*/
public function prepare(array $likes);
}
class LikeHandler extends SingletonFactory {
/**
* loaded like objects
- * @var array<array>
+ * @var LikeObject[][]
*/
protected $likeObjectCache = array();
/**
* cached object types
- * @var array<array>
+ * @var ObjectType[]
*/
protected $cache = null;
* Gets the like objects of a specific object type.
*
* @param \wcf\data\object\type\ObjectType $objectType
- * @return array<\wcf\data\like\object\LikeObject>
+ * @return LikeObject[]
*/
public function getLikeObjects(ObjectType $objectType) {
if (isset($this->likeObjectCache[$objectType->objectTypeID])) {
* Removes all likes for given objects.
*
* @param string $objectType
- * @param array<integer> $objectIDs
- * @param array<string> $notificationObjectTypes
+ * @param integer[] $objectIDs
+ * @param string[] $notificationObjectTypes
*/
public function removeLikes($objectType, array $objectIDs, array $notificationObjectTypes = array()) {
$objectTypeObj = $this->getObjectType($objectType);
namespace wcf\system\log\modification;
use wcf\data\modification\log\ModificationLog;
use wcf\data\modification\log\ModificationLogEditor;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\system\database\util\PreparedStatementConditionBuilder;
use wcf\system\exception\SystemException;
class ModificationLogHandler extends SingletonFactory {
/**
* list of object types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
protected $cache = array();
/**
* mail recipients
- * @var array<string>
+ * @var string[]
*/
protected $to = array();
/**
* mail carbon copy
- * @var array<string>
+ * @var string[]
*/
protected $cc = array();
/**
* mail blind carbon copy
- * @var array<string>
+ * @var string[]
*/
protected $bcc = array();
abstract class TreeMenu extends SingletonFactory {
/**
* list of visible menu items
- * @var array<\wcf\system\menu\ITreeMenuItem>
+ * @var ITreeMenuItem[]
*/
public $menuItemList = array();
/**
* list of the names of the active menu items
- * @var array<string>
+ * @var string[]
*/
public $activeMenuItems = array();
/**
* list of all menu items
- * @var array<\wcf\system\menu\ITreeMenuItem>
+ * @var ITreeMenuItem[]
*/
public $menuItems = null;
* Computes the settings for BBCodes, Smilies and pre parsing. Optionally accepts the corresponding DatabaseObject
* whose values will be used in case the settings did not contain the individual values (legacy support).
*
- * @param array<array> $parameters
+ * @param mixed[][] $parameters
* @param \wcf\data\DatabaseObject $object
* @param string $permissionCanUseBBCodes
* @param string $permissionCanUseSmilies
class QuickReplyManager extends SingletonFactory {
/**
* list of allowed bbcodes
- * @var array<string>
+ * @var string[]
*/
public $allowedBBodes = null;
/**
* Sets the allowed bbcodes.
*
- * @param array<string> $allowedBBCodes
+ * @param string[] $allowedBBCodes
*/
public function setAllowedBBCodes(array $allowedBBCodes = null) {
$this->allowedBBodes = $allowedBBCodes;
* Validates parameters for current request.
*
* @param IMessageQuickReplyAction $object
- * @param array<array> $parameters
+ * @param mixed[][] $parameters
* @param string $containerClassName
* @param string $containerDecoratorClassName
* @throws SystemException
* Creates a new message and returns the parsed template.
*
* @param \wcf\data\IMessageQuickReplyAction $object
- * @param array<array> $parameters
+ * @param mixed[][] $parameters
* @param string $containerActionClassName
* @param string $sortOrder
* @param string $templateName
class Censorship extends SingletonFactory {
/**
* censored words
- * @var array<string>
+ * @var string[]
*/
protected $censoredWords = array();
/**
* list of words
- * @var array<string>
+ * @var string[]
*/
protected $words = array();
<?php
namespace wcf\system\message\embedded\object;
+use wcf\data\DatabaseObject;
/**
* Default interface of embedded object handler.
* Returns the IDs of found embedded objects.
*
* @param string $message
- * @return array<integer>
+ * @return integer[]
*/
public function parseMessage($message);
* Loads and returns embedded objects.
*
* @param array $objectIDs
- * @return array<\wcf\data\DatabaseObject>
+ * @return DatabaseObject[]
*/
public function loadObjects(array $objectIDs);
}
* Removes embedded object assigments for given messages.
*
* @param string $messageObjectType
- * @param array<integer> $messageIDs
+ * @param integer[] $messageIDs
*/
public function removeObjects($messageObjectType, array $messageIDs) {
$conditionBuilder = new PreparedStatementConditionBuilder();
* Loads the embedded objects for given messages.
*
* @param string $messageObjectType
- * @param array<integer> $messageIDs
+ * @param integer[] $messageIDs
*/
public function loadObjects($messageObjectType, array $messageIDs) {
$conditionBuilder = new PreparedStatementConditionBuilder();
/**
* list of quoted message
- * @var array<\wcf\system\message\quote\QuotedMessage>
+ * @var QuotedMessage[]
*/
public $quotedMessages = array();
/**
* Returns a list of QuotedMessage objects.
*
- * @param array<array> $data
- * @return array<\wcf\system\message\quote\QuotedMessage>
+ * @param mixed[][] $data
+ * @return QuotedMessage[]
*/
abstract protected function getMessages(array $data);
}
/**
* Renders a list of quotes for insertation.
*
- * @param array<array> $data
+ * @param mixed[][] $data
* @param boolean $render
- * @return array<string>
+ * @return string[]
*/
public function renderQuotes(array $data, $render = true);
}
/**
* list of stored quotes
- * @var array<array>
+ * @var mixed[][]
*/
protected $quotes = [];
* Returns a list of full quotes by object id for given object types.
*
* @param string[] $objectTypes
- * @return array<array>
+ * @return mixed[][]
* @throws SystemException
*/
public function getFullQuoteObjectIDs(array $objectTypes) {
* Marks a list of moderation queue entries as done.
*
* @param integer $objectTypeID
- * @param array<integer> $objectIDs
+ * @param integer[] $objectIDs
*/
protected function removeEntries($objectTypeID, array $objectIDs) {
$queueList = new ModerationQueueList();
<?php
namespace wcf\system\moderation\queue;
use wcf\data\moderation\queue\ModerationQueue;
+use wcf\data\moderation\queue\ViewableModerationQueue;
/**
* Default interface for moderation queue managers.
/**
* Creates queue assignments for matching object type ids.
*
- * @param integer $objectTypeID
- * @param array<\wcf\data\moderation\queue\ModerationQueue> $queues
+ * @param integer $objectTypeID
+ * @param ModerationQueue[] $queues
*/
public function assignQueues($objectTypeID, array $queues);
/**
* Populates object properties for viewing.
*
- * @param integer $objectTypeID
- * @param array<\wcf\data\moderation\queue\ViewableModerationQueue> $objects
+ * @param integer $objectTypeID
+ * @param ViewableModerationQueue[] $objects
*/
public function populate($objectTypeID, array $objects);
use wcf\data\moderation\queue\ModerationQueue;
use wcf\data\moderation\queue\ModerationQueueList;
use wcf\data\moderation\queue\ViewableModerationQueue;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\system\database\util\PreparedStatementConditionBuilder;
use wcf\system\exception\SystemException;
class ModerationQueueManager extends SingletonFactory {
/**
* list of definition names by definition id
- * @var array<string>
+ * @var string[]
*/
protected $definitions = array();
/**
* list of moderation types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
protected $moderationTypes = array();
/**
* list of object type names categorized by type
- * @var array<array>
+ * @var integer[][]
*/
protected $objectTypeNames = array();
/**
* list of object types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
protected $objectTypes = array();
/**
* Returns a list of moderation types.
*
- * @return array<string>
+ * @return string[]
*/
public function getModerationTypes() {
return array_keys($this->objectTypeNames);
/**
* Returns a list of available definitions.
*
- * @return array<string>
+ * @return string[]
*/
public function getDefinitions() {
return $this->definitions;
/**
* Returns a list of object type ids for given definiton ids.
*
- * @param array<integer> $definitionIDs
- * @return array<integer>
+ * @param integer[] $definitionIDs
+ * @return integer[]
*/
public function getObjectTypeIDs(array $definitionIDs) {
$objectTypeIDs = array();
/**
* Saves moderation queue assignments.
*
- * @param array<boolean> $assignments
+ * @param boolean[] $assignments
*/
public function setAssignment(array $assignments) {
$sql = "INSERT IGNORE INTO wcf".WCF_N."_moderation_queue_to_user
/**
* Removes a list of orphaned queue ids.
*
- * @param array<integer> $queueIDs
+ * @param integer[] $queueIDs
*/
public function removeOrphans(array $queueIDs) {
if (!empty($queueIDs)) {
/**
* Returns a list of object type ids and their parent definition name.
*
- * @return array<string>
+ * @return string[]
*/
public function getDefinitionNamesByObjectTypeIDs() {
$definitionNames = array();
* Returns a list of definition names associated with the specified object type.
*
* @param string $objectType
- * @return array<string>
+ * @return string[]
*/
public function getDefinitionNamesByObjectType($objectType) {
$definitionNames = array();
<?php
namespace wcf\system\notice;
+use wcf\data\notice\Notice;
use wcf\system\cache\builder\NoticeCacheBuilder;
use wcf\system\SingletonFactory;
class NoticeHandler extends SingletonFactory {
/**
* list with all enabled notices
- * @var array<\wcf\data\notice\Notice>
+ * @var Notice[]
*/
protected $notices = array();
/**
* Returns the notices which are visible for the active user.
*
- * @return array<\wcf\data\notice\Notice>
+ * @return Notice[]
*/
public function getVisibleNotices() {
$notices = array();
class FileOptionType extends AbstractOptionType {
/**
* upload handler for option files
- * @var array<\wcf\system\upload\UploadHandler>
+ * @var UploadHandler[]
*/
protected $uploadHandlers = array();
class OptionHandler implements IOptionHandler {
/**
* list of application abbreviations
- * @var array<string>
+ * @var string[]
*/
protected $abbreviations = null;
/**
* list of all option categories
- * @var array<\wcf\data\option\category\OptionCategory>
+ * @var OptionCategory[]
*/
public $cachedCategories = null;
/**
* list of all options
- * @var array<\wcf\data\option\Option>
+ * @var Option[]
*/
public $cachedOptions = null;
/**
* options of the active category
- * @var array<Option>
+ * @var Option[]
*/
public $options = array();
/**
* type object cache
- * @var array<\wcf\system\option\IOptionType>
+ * @var IOptionType[]
*/
public $typeObjects = array();
/**
* option values
- * @var array<mixed>
+ * @var mixed[]
*/
public $optionValues = array();
/**
* raw option values
- * @var array<mixed>
+ * @var mixed[]
*/
public $rawValues = array();
* Splits the given dashed date into its components.
*
* @param string $value
- * @return array<integer>
+ * @return integer[]
*/
protected static function splitDate($value) {
$year = $month = $day = 0;
class BBCodeSelectUserGroupOptionType extends AbstractOptionType implements IUserGroupOptionType {
/**
* available BBCodes
- * @var array<string>
+ * @var string[]
*/
protected $bbCodes = null;
/**
* Loads the list of BBCodes for the HTML select element.
*
- * @return array<string>
+ * @return string[]
*/
protected function loadBBCodeSelection() {
$this->bbCodes = array_keys(BBCodeCache::getInstance()->getBBCodes());
/**
* list of instructions
- * @var array<array>
+ * @var mixed[][]
*/
protected $instructions = array(
'install' => array(),
/**
* list of php requirements
- * @var array<array>
+ * @var mixed[][]
*/
protected $phpRequirements = array();
/**
* Returns a list of packages which exclude this package.
*
- * @return array<\wcf\data\package\Package>
+ * @return Package[]
*/
public function getConflictedExcludingPackages() {
$conflictedPackages = array();
/**
* Returns a list of packages which are excluded by this package.
*
- * @return array<\wcf\data\package\Package>
+ * @return Package[]
*/
public function getConflictedExcludedPackages() {
$conflictedPackages = array();
/**
* Returns a list of php requirements for current package.
*
- * @return array<array>
+ * @return mixed[][]
*/
public function getPhpRequirements() {
return $this->phpRequirements;
* Validates specific php requirements.
*
* @param array $requirements
- * @return array<array>
+ * @return mixed[][]
*/
public static function validatePHPRequirements(array $requirements) {
$errors = array();
abstract class PackageInstallationFileHandler implements IFileHandler {
/**
* abbrevation of the application the files belong to
- * @var array<string>
+ * @var string[]
*/
protected $application = '';
/**
* list of requirements to be checked before package installation
- * @var array<array>
+ * @var mixed[][]
*/
public $requirements = array();
/**
* list of packages about to be installed
- * @var array<string>
+ * @var string[]
*/
protected static $pendingPackages = array();
/**
* list of package update servers
- * @var array<\wcf\data\package\update\server\PackageUpdateServer>
+ * @var PackageUpdateServer[]
*/
protected $packageUpdateServers = array();
/**
* Creates a new instance of PackageInstallationScheduler
*
- * @param array<string> $selectedPackages
+ * @param string[] $selectedPackages
*/
public function __construct(array $selectedPackages) {
$this->selectedPackages = $selectedPackages;
/**
* Refreshes the package database.
*
- * @param array<integer> $packageUpdateServerIDs
+ * @param integer[] $packageUpdateServerIDs
* @param boolean $ignoreCache
*/
public function refreshPackageDatabase(array $packageUpdateServerIDs = array(), $ignoreCache = false) {
/**
* list of loaded acl object type ids sorted by their option type name
- * @var array<integer>
+ * @var integer[]
*/
protected $optionTypeIDs = array();
/**
* list of attributes per bbcode id
- * @var array<array>
+ * @var mixed[][]
*/
protected $attributes = array();
/**
* list of pages per action id
- * @var array<array>
+ * @var mixed[][]
*/
protected $pages = array();
/**
* list of names of tags which aren't considered as additional data
- * @var array<string>
+ * @var string[]
*/
public static $reservedTags = array('classname', 'definitionname', 'name');
/**
* list of names of tags which aren't considered as additional data
- * @var array<string>
+ * @var string[]
*/
public static $reservedTags = array('name', 'optiontype', 'defaultvalue', 'validationpattern', 'enableoptions', 'showorder', 'hidden', 'selectoptions', 'categoryname', 'permissions', 'options', 'attrs', 'cdata', 'supporti18n', 'requirei18n');
class UserGroupOptionPackageInstallationPlugin extends AbstractOptionPackageInstallationPlugin {
/**
* list of group ids by type
- * @var array<array>
+ * @var integer[][]
*/
protected $groupIDs = null;
/**
* list of names of tags which aren't considered as additional data
- * @var array<string>
+ * @var string[]
*/
public static $reservedTags = array('name', 'optiontype', 'defaultvalue', 'admindefaultvalue', 'userdefaultvalue', 'moddefaultvalue', 'validationpattern', 'showorder', 'categoryname', 'selectoptions', 'enableoptions', 'permissions', 'options', 'attrs', 'cdata', 'usersonly');
/**
* Returns a list of group ids by type.
*
- * @return array<array>
+ * @return integer[][]
*/
protected function getGroupIDs() {
if ($this->groupIDs === null) {
/**
* preset event ids
- * @var array<integer>
+ * @var integer[]
*/
protected $presetEventIDs = array();
/**
* list of names of tags which aren't considered as additional data
- * @var array<string>
+ * @var string[]
*/
public static $reservedTags = array('name', 'optiontype', 'defaultvalue', 'validationpattern', 'required', 'editable', 'visible', 'searchable', 'showorder', 'outputclass', 'selectoptions', 'enableoptions', 'isdisabled', 'categoryname', 'permissions', 'options', 'attrs', 'cdata');
class PackageValidationArchive implements \RecursiveIterator {
/**
* list of excluded packages grouped by package
- * @var array<string>
+ * @var string[]
*/
protected static $excludedPackages = array();
/**
* list of direct requirements delivered by this package
- * @var array<\wcf\system\package\validation\PackageValidationArchive>
+ * @var PackageValidationArchive[]
*/
protected $children = array();
* Validates install or update instructions against the corresponding PIP, unknown PIPs will be silently ignored.
*
* @param string $type
- * @param array<array> $instructions
+ * @param mixed[][] $instructions
* @throws PackageValidationException
*/
protected function validatePackageInstallationPlugins($type, array $instructions) {
/**
* Sets the children of this package validation archive.
*
- * @param array<\wcf\system\package\validation\PackageValidationArchive> $children
+ * @param PackageValidationArchive[] $children
*/
public function setChildren(array $children) {
$this->children = $children;
class PackageValidationException extends SystemException {
/**
* list of additional details for each subtype
- * @var array<string>
+ * @var string[]
*/
protected $details = array();
* Creates a new PackageArchiveValidationException.
*
* @param integer $code
- * @param array<string> $details
+ * @param string[] $details
*/
public function __construct($code, array $details = array()) {
$this->details = $details;
/**
* Returns exception details.
*
- * @return array<string>
+ * @return string[]
*/
public function getDetails() {
return $this->details;
class PackageValidationManager extends SingletonFactory {
/**
* list of known package installation plugins
- * @var array<string>
+ * @var string[]
*/
protected $packageInstallationPlugins = array();
/**
* virtual package list containing package => packageVersion
- * @var array<string>
+ * @var string[]
*/
protected $virtualPackageList = array();
<?php
namespace wcf\system\page;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\system\application\ApplicationHandler;
use wcf\system\exception\SystemException;
class PageManager extends SingletonFactory {
/**
* list of available page object types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
protected $objectTypes = array();
/**
* Returns a list of the available page object types.
*
- * @return array<\wcf\data\object\type\ObjectType>
+ * @return ObjectType[]
*/
public function getObjectTypes() {
return $this->objectTypes;
/**
* Returns a list of supported currencies.
*
- * @return array<string>
+ * @return string[]
*/
public function getSupportedCurrencies();
/**
* Returns the available payment methods for selection.
*
- * @return array<string>
+ * @return string[]
*/
public function getPaymentMethodSelection() {
$selection = array();
<?php
namespace wcf\system\poll;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\data\poll\option\PollOptionList;
use wcf\data\poll\Poll;
class PollManager extends SingletonFactory {
/**
* list of object types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
protected $cache = array();
/**
* poll data
- * @var array<mixed>
+ * @var mixed[]
*/
protected $pollData = array(
'endTime' => '',
/**
* list of poll options
- * @var array<string>
+ * @var string[]
*/
protected $pollOptions = array();
/**
* Removes a list of polls by id.
*
- * @param array<integer> $pollIDs
+ * @param integer[] $pollIDs
*/
public function removePolls(array $pollIDs) {
$conditions = new PreparedStatementConditionBuilder();
/**
* Returns a list of polls including options and vote state for current user.
*
- * @param array<integer> $pollIDs
- * @return array<\wcf\data\poll\Poll>
+ * @param integer[] $pollIDs
+ * @return Poll[]
*/
public function getPolls(array $pollIDs) {
$pollList = new PollList();
/**
* Returns a list of poll options with vote state for current user.
*
- * @param array<integer> $pollIDs
+ * @param integer[] $pollIDs
* @return \wcf\data\poll\option\PollOptionList
*/
public function getPollOptions(array $pollIDs) {
class FlexibleRoute implements IRoute {
/**
* schema for outgoing links
- * @var array<array>
+ * @var mixed[][]
*/
protected $buildSchema = array();
/**
* list of required components
- * @var array<string>
+ * @var string[]
*/
protected $requireComponents = array();
/**
* parsed request data
- * @var array<mixed>
+ * @var mixed[]
*/
protected $routeData = array();
/**
* Sets the list of required components.
*
- * @param array<string> $requiredComponents
+ * @param string[] $requiredComponents
*/
public function setRequiredComponents(array $requiredComponents) {
$this->requireComponents = $requiredComponents;
/**
* cached list of transformed controller names
- * @var array<string>
+ * @var string[]
*/
protected static $controllerNames = array();
/**
* list of application abbreviation and default controller name
- * @var array<string>
+ * @var string[]
*/
protected static $defaultControllers = null;
/**
* list of application abbreviation and default controller name
- * @var array<string>
+ * @var string[]
*/
protected $defaultControllers = null;
class DynamicRequestRoute implements IRequestRoute {
/**
* schema for outgoing links
- * @var array<array>
+ * @var mixed[][]
*/
protected $buildSchema = [];
/**
* list of required components
- * @var array<string>
+ * @var string[]
*/
protected $requireComponents = [];
/**
* parsed request data
- * @var array<mixed>
+ * @var mixed[]
*/
protected $routeData = [];
/**
* Sets the list of required components.
*
- * @param array<string> $requiredComponents
+ * @param string[] $requiredComponents
*/
public function setRequiredComponents(array $requiredComponents) {
$this->requireComponents = $requiredComponents;
* Deletes search index entries.
*
* @param string $objectType
- * @param array<integer> $objectIDs
+ * @param integer[] $objectIDs
*/
public function delete($objectType, array $objectIDs);
/**
* list of application packages
- * @var array<\wcf\data\package\Package>
+ * @var Package[]
*/
protected static $packages = array();
<?php
namespace wcf\system\search\acp;
+use wcf\data\acp\search\provider\ACPSearchProvider;
use wcf\system\application\ApplicationHandler;
use wcf\system\cache\builder\ACPSearchProviderCacheBuilder;
use wcf\system\exception\SystemException;
class ACPSearchHandler extends SingletonFactory {
/**
* list of application abbreviations
- * @var array<string>
+ * @var string[]
*/
public $abbreviations = array();
/**
* list of acp search provider
- * @var array<\wcf\data\acp\search\provider\ACPSearchProvider>
+ * @var ACPSearchProvider[]
*/
protected $cache = null;
* Returns a list of application abbreviations.
*
* @param string $suffix
- * @return array<string>
+ * @return string[]
*/
public function getAbbreviations($suffix = '') {
if (empty($this->abbreviations)) {
/**
* result list
- * @var array<\wcf\system\search\acp\ACPSearchResult>
+ * @var ACPSearchResult[]
*/
protected $results = array();
<?php
namespace wcf\system\search\acp;
+use wcf\data\DatabaseObject;
use wcf\system\exception\SystemException;
/**
abstract class AbstractCategorizedACPSearchResultProvider extends AbstractACPSearchResultProvider {
/**
* list of categories
- * @var array<\wcf\data\DatabaseObject>
+ * @var DatabaseObject[]
*/
protected $categories = array();
/**
* list of top category names (level 1 and 2)
- * @var array<string>
+ * @var string[]
*/
protected $topCategories = array();
* Returns a list of seach results for given query.
*
* @param string $query
- * @return array<\wcf\system\search\acp\ACPSearchResult>
+ * @return ACPSearchResult[]
*/
public function search($query);
}
/**
* group data and permissions
- * @var array<array>
+ * @var mixed[][]
*/
protected $groupData = null;
/**
* language ids for active user
- * @var array<integer>
+ * @var integer[]
*/
protected $languageIDs = null;
/**
* list of names of permissions only available for users
- * @var array<string>
+ * @var string[]
*/
protected $usersOnlyPermissions = array();
/**
* Returns language ids for active user.
*
- * @return array<integer>
+ * @return integer[]
*/
public function getLanguageIDs() {
$this->loadLanguageIDs();
/**
* Resets session-specific storage data.
*
- * @param array<integer> $userIDs
+ * @param integer[] $userIDs
*/
public static function resetSessions(array $userIDs = array()) {
if (!empty($userIDs)) {
/**
* files to delete
- * @var array<string>
+ * @var string[]
*/
protected $files;
<?php
namespace wcf\system\sitemap;
+use wcf\data\sitemap\Sitemap;
use wcf\system\cache\builder\SitemapCacheBuilder;
use wcf\system\exception\SystemException;
use wcf\system\SingletonFactory;
class SitemapHandler extends SingletonFactory {
/**
* sitemap cache
- * @var array<\wcf\data\sitemap\Sitemap>
+ * @var Sitemap[]
*/
protected $cache = null;
/**
* Returns array of tree items or an empty array if only one sitemap is registered.
*
- * @return array<\wcf\data\sitemap\Sitemap>
+ * @return Sitemap[]
*/
public function getTree() {
$tree = array();
/**
* names of option types which are supported as additional variables
- * @var array<string>
+ * @var string[]
*/
public static $supportedOptionType = ['boolean', 'integer'];
/**
* Prepares the style compiler by adding variables to environment.
*
- * @param array<string> $variables
+ * @param string[] $variables
* @return string
*/
protected function bootstrap(array $variables) {
/**
* Returns a list of all for the current user available styles.
*
- * @return array<\wcf\data\style\Style>
+ * @return Style[]
*/
public function getAvailableStyles() {
$styles = array();
/**
* Returns a list of all styles.
*
- * @return array<\wcf\data\style\Style>
+ * @return Style[]
*/
public function getStyles() {
return $this->cache['styles'];
<?php
namespace wcf\system\tagging;
+use wcf\data\tag\TagCloudTag;
use wcf\system\cache\builder\TagCloudCacheBuilder;
use wcf\system\language\LanguageFactory;
/**
* list of tags
- * @var array<\wcf\data\tag\TagCloudTag>
+ * @var TagCloudTag[]
*/
protected $tags = array();
/**
* active language ids
- * @var array<integer>
+ * @var integer[]
*/
protected $languageIDs = array();
/**
* Contructs a new TagCloud object.
*
- * @param array<integer> $languageIDs
+ * @param integer[] $languageIDs
*/
public function __construct(array $languageIDs = array()) {
$this->languageIDs = $languageIDs;
/**
* Gets a list of weighted tags.
*
- * @param integer $slice
- * @return array<\wcf\data\tag\TagCloudTag> the tags to get
+ * @param integer $slice
+ * @return TagCloudTag[] the tags to get
*/
public function getTags($slice = 50) {
// slice list
* Deletes all tags assigned to given tagged objects.
*
* @param string $objectType
- * @param array<integer> $objectIDs
+ * @param integer[] $objectIDs
*/
public function deleteObjects($objectType, array $objectIDs) {
$objectTypeID = $this->getObjectTypeID($objectType);
*
* @param string $objectType
* @param integer $objectID
- * @param array<integer> $languageIDs
- * @return array<\wcf\data\tag\Tag>
+ * @param integer[] $languageIDs
+ * @return Tag[]
*/
public function getObjectTags($objectType, $objectID, array $languageIDs = array()) {
$tags = $this->getObjectsTags($objectType, array($objectID), $languageIDs);
* Returns all tags set for given objects.
*
* @param string $objectType
- * @param array<integer> $objectIDs
- * @param array<integer> $languageIDs
+ * @param integer[] $objectIDs
+ * @param integer[] $languageIDs
* @return array
*/
public function getObjectsTags($objectType, array $objectIDs, array $languageIDs = array()) {
class TypedTagCloud extends TagCloud {
/**
* object type ids
- * @var array<integer>
+ * @var integer[]
*/
protected $objectTypeIDs = array();
* Contructs a new TypedTagCloud object.
*
* @param string $objectType
- * @param array<integer> $languageIDs
+ * @param integer[] $languageIDs
*/
public function __construct($objectType, array $languageIDs = array()) {
$objectTypeObj = ObjectTypeCache::getInstance()->getObjectTypeByName('com.woltlab.wcf.tagging.taggableObject', $objectType);
/**
* directories used as template source
- * @var array<string>
+ * @var string[]
*/
public $templatePaths = array();
/**
* list of registered prefilters
- * @var array<string>
+ * @var string[]
*/
protected $prefilters = array();
/**
* all available template variables and those assigned during runtime
- * @var array<array>
+ * @var mixed[][]
*/
protected $v = array();
/**
* all cached variables for usage after execution in sandbox
- * @var array<array>
+ * @var mixed[][]
*/
protected $sandboxVars = array();
/**
* contains all templates with assigned template listeners.
- * @var array<array>
+ * @var string[][][]
*/
protected $templateListeners = array();
/**
* Returns an array with all prefilters.
*
- * @return array<string>
+ * @return string[]
*/
public function getPrefilters() {
return $this->prefilters;
/**
* Registers prefilters.
*
- * @param array<string> $prefilters
+ * @param string[] $prefilters
*/
public function registerPrefilter(array $prefilters) {
foreach ($prefilters as $name) {
/**
* PHP functions that can be used in the modifier syntax and are unknown
* to PHP's function_exists function
- * @var array<string>
+ * @var string[]
*/
protected $unknownPHPFunctions = array('isset', 'unset', 'empty');
/**
* PHP functions that can not be used in the modifier syntax
- * @var array<string>
+ * @var string[]
*/
protected $disabledPHPFunctions = array(
'system', 'exec', 'passthru', 'shell_exec', // command line execution
/**
* list of automatically loaded tenplate plugins
- * @var array<string>
+ * @var string[]
*/
protected $autoloadPlugins = array();
/**
* list of loaded compiler plugin objects
- * @var array<\wcf\system\template\ICompilerTemplatePlugin>
+ * @var ICompilerTemplatePlugin[]
*/
protected $compilerPlugins = array();
/**
* list of static includes per template
- * @var array<string>
+ * @var string[]
*/
protected $staticIncludes = array();
class HtmlOptionsFunctionTemplatePlugin extends HtmlCheckboxesFunctionTemplatePlugin {
/**
* selected values
- * @var array<string>
+ * @var string[]
*/
protected $selected = array();
class ImplodeCompilerTemplatePlugin implements ICompilerTemplatePlugin {
/**
* local tag stack
- * @var array<string>
+ * @var string[]
*/
protected $tagStack = array();
class JsFunctionTemplatePlugin implements IFunctionTemplatePlugin {
/**
* list of already included JavaScript files
- * @var array<string>
+ * @var string[]
*/
protected $includedFiles = [];
/**
* allowed file extensions
- * @var array<string>
+ * @var string[]
*/
protected $fileExtensions = array();
* Creates a new DefaultUploadFileValidationStrategy object.
*
* @param integer $maxFilesize
- * @param array<string> $fileExtensions
+ * @param string[] $fileExtensions
*/
public function __construct($maxFilesize, array $fileExtensions) {
$this->maxFilesize = $maxFilesize;
class UploadHandler {
/**
* list of uploaded files
- * @var array<\wcf\system\upload\UploadFile>
+ * @var UploadFile[]
*/
protected $files = array();
/**
* Creates a new UploadHandler object.
*
- * @param array<mixed> $rawFileData
+ * @param mixed[] $rawFileData
*/
protected function __construct(array $rawFileData) {
if (is_array($rawFileData['name'])) {
/**
* Returns the list of uploaded files.
*
- * @return array<\wcf\system\upload\UploadFile>
+ * @return UploadFile[]
*/
public function getFiles() {
return $this->files;
/**
* Returns a list of erroneous files.
*
- * @return array<\wcf\system\upload\UploadFile>
+ * @return UploadFile[]
*/
public function getErroneousFiles() {
return $this->erroneousFiles;
class GroupedUserList implements \Countable, \Iterator {
/**
* list of user profiles shared across all instances of GroupedUserList
- * @var array<\wcf\data\user\UserProfile>
+ * @var UserProfile[]
*/
protected static $users = array();
/**
* list of user ids assigned for this group
- * @var array<integer>
+ * @var integer[]
*/
protected $userIDs = array();
/**
* Adds a list of user ids to this group.
*
- * @param array<integer> $userIDs
+ * @param integer[] $userIDs
*/
public function addUserIDs(array $userIDs) {
foreach ($userIDs as $userID) {
class UserBirthdayCache extends SingletonFactory {
/**
* loaded months
- * @var array<integer>
+ * @var integer[]
*/
protected $monthsLoaded = array();
/**
* user birthdays
- * @var array<integer>
+ * @var integer[]
*/
protected $birthdays = array();
*
* @param integer $month
* @param integer $day
- * @return array<integer> list of user ids
+ * @return integer[] list of user ids
*/
public function getBirthdays($month, $day) {
$this->loadMonth($month);
<?php
namespace wcf\system\user\activity\event;
+use wcf\data\user\activity\event\ViewableUserActivityEvent;
/**
* Default interface for user activity events.
/**
* Prepares a list of events for output.
*
- * @param array<\wcf\data\user\activity\event\ViewableUserActivityEvent> $events
+ * @param ViewableUserActivityEvent[] $events
*/
public function prepare(array $events);
}
<?php
namespace wcf\system\user\activity\event;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\data\user\activity\event\UserActivityEventAction;
use wcf\data\user\activity\event\ViewableUserActivityEventList;
class UserActivityEventHandler extends SingletonFactory {
/**
* cached object types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
protected $objectTypes = array();
<?php
namespace wcf\system\user\activity\point;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\data\user\UserProfileAction;
use wcf\system\database\util\PreparedStatementConditionBuilder;
class UserActivityPointHandler extends SingletonFactory {
/**
* list of user activity point object types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
protected $objectTypes = array();
/**
* maps the user activity point object type ids to their object type names
- * @var array<string>
+ * @var string[]
*/
protected $objectTypeNames = array();
/**
* Adds a new user activity point event.
*
- * @param string $objectType
- * @param integer $objectID
- * @param integer $userID
- * @param array<mixed> $additionalData
+ * @param string $objectType
+ * @param integer $objectID
+ * @param integer $userID
+ * @param mixed[] $additionalData
* @throws SystemException
*/
public function fireEvent($objectType, $objectID, $userID = null, array $additionalData = array()) {
/**
* Updates total activity points and ranks for given user ids.
*
- * @param array<integer> $userIDs
+ * @param integer[] $userIDs
*/
public function updateUsers(array $userIDs) {
$userIDs = array_unique($userIDs);
/**
* Updates the user ranks for the given users.
*
- * @param array<integer> $userIDs
+ * @param integer[] $userIDs
*/
protected function updateUserRanks(array $userIDs) {
$action = new UserProfileAction($userIDs, 'updateUserRank');
class UserCollapsibleContentHandler extends SingletonFactory {
/**
* object type cache
- * @var array<array>
+ * @var mixed[][]
*/
protected $cache = null;
/**
* list of collapsed object ids per object type id
- * @var array<array>
+ * @var integer[][]
*/
protected $collapsedContent = array();
* Returns a list of object ids being collapsed by current user.
*
* @param integer $objectTypeID
- * @return array<integer>
+ * @return integer[]
*/
public function getCollapsedContent($objectTypeID) {
if (!isset($this->collapsedContent[$objectTypeID])) {
class UserCollapsibleSidebarHandler extends SingletonFactory implements IAJAXInvokeAction {
/**
* list of methods allowed for remote invoke
- * @var array<string>
+ * @var string[]
*/
public static $allowInvoke = array('toggle');
namespace wcf\system\user\group\assignment;
use wcf\data\object\type\ObjectTypeCache;
use wcf\data\user\group\assignment\UserGroupAssignment;
+use wcf\data\user\User;
use wcf\data\user\UserAction;
use wcf\data\user\UserList;
use wcf\system\cache\builder\UserGroupAssignmentCacheBuilder;
* Note: This method uses the user ids as a parameter instead of user objects
* on purpose to make sure the latest data of the users are fetched.
*
- * @param array<integer> $userIDs
+ * @param integer[] $userIDs
*/
public function checkUsers(array $userIDs) {
if (empty($userIDs)) return;
* assignment.
*
* @param \wcf\data\user\group\assignment\UserGroupAssignment $assignment
- * @return array<\wcf\data\user\User>
+ * @return User[]
*/
public function getUsers(UserGroupAssignment $assignment) {
$userList = new UserList();
<?php
namespace wcf\system\user\notification;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\data\user\notification\event\recipient\UserNotificationEventRecipientList;
use wcf\data\user\notification\event\UserNotificationEventList;
use wcf\system\exception\SystemException;
use wcf\system\mail\Mail;
use wcf\system\user\notification\event\IUserNotificationEvent;
+use wcf\system\user\notification\object\type\IUserNotificationObjectType;
use wcf\system\user\notification\object\IUserNotificationObject;
use wcf\system\user\storage\UserStorageHandler;
use wcf\system\SingletonFactory;
/**
* list of object types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
protected $objectTypes = array();
* @param string $objectType
* @param IUserNotificationObject $notificationObject
* @param integer[] $recipientIDs
- * @param array<mixed> $additionalData
+ * @param mixed[] $additionalData
* @param integer $baseObjectID
* @throws SystemException
*/
* @param integer $limit
* @param integer $offset
* @param boolean $showConfirmedNotifications DEPRECATED
- * @return array<array>
+ * @return mixed[]
*/
public function getNotifications($limit = 5, $offset = 0, $showConfirmedNotifications = false) {
$notifications = $this->fetchNotifications($limit, $offset);
* @param integer $limit
* @param integer $offset
* @param mixed $filterByConfirmed
- * @return array<\wcf\data\user\notification\UserNotification>
+ * @return UserNotification[]
*/
protected function fetchNotifications($limit, $offset, $filterByConfirmed = null) {
// build enormous query
/**
* Processes a list of notification objects.
*
- * @param array<\wcf\data\user\notification\UserNotification> $notificationObjects
- * @return array
+ * @param UserNotification[] $notificationObjects
+ * @return mixed[]
*/
public function processNotifications(array $notificationObjects) {
// return an empty set if no notifications exist
* Returns all events for given object type.
*
* @param string $objectType
- * @return array<\wcf\system\user\notification\event\IUserNotificationEvent>
+ * @return IUserNotificationEvent[]
*/
public function getEvents($objectType) {
if (!isset($this->availableEvents[$objectType])) return array();
/**
* Returns a list of available object types.
*
- * @return array<\wcf\system\user\notification\object\type\IUserNotificationObjectType>
+ * @return IUserNotificationObjectType[]
*/
public function getAvailableObjectTypes() {
return $this->availableObjectTypes;
/**
* Returns a list of available events.
*
- * @return array<\wcf\system\user\notification\event\IUserNotificationEvent>
+ * @return IUserNotificationEvent[]
*/
public function getAvailableEvents() {
return $this->availableEvents;
*
* @param string $eventName
* @param string $objectType
- * @param array<integer> $recipientIDs
- * @param array<integer> $objectIDs
+ * @param integer[] $recipientIDs
+ * @param integer[] $objectIDs
*/
public function deleteNotifications($eventName, $objectType, array $recipientIDs, array $objectIDs = array()) {
$this->markAsConfirmed($eventName, $objectType, $recipientIDs, $objectIDs);
/**
* Marks a list of notification ids as confirmed.
*
- * @param array<integer> $notificationIDs
+ * @param integer[] $notificationIDs
*/
public function markAsConfirmedByIDs(array $notificationIDs) {
if (empty($notificationIDs)) {
/**
* list of authors for stacked notifications
- * @var array<\wcf\data\user\UserProfile>
+ * @var UserProfile[]
*/
protected $authors = array();
/**
* additional data for this event
- * @var array<mixed>
+ * @var mixed[]
*/
protected $additionalData = array();
/**
* list of point of times for each period's end
- * @var array<string>
+ * @var string[]
*/
protected static $periods = array();
/**
* Returns a list of authors for stacked notifications sorted by time.
*
- * @return array<\wcf\data\user\UserProfile>
+ * @return UserProfile[]
*/
public function getAuthors();
/**
* Sets a list of authors for stacked notifications.
*
- * @param array<\wcf\data\user\UserProfile> $authors
+ * @param UserProfile[] $authors
*/
public function setAuthors(array $authors);
* @param \wcf\data\user\notification\UserNotification $notification
* @param \wcf\system\user\notification\object\IUserNotificationObject $object
* @param \wcf\data\user\UserProfile $author
- * @param array<mixed> $additionalData
+ * @param mixed[] $additionalData
*/
public function setObject(UserNotification $notification, IUserNotificationObject $object, UserProfile $author, array $additionalData = array());
<?php
namespace wcf\system\user\notification\object\type;
use wcf\data\IDatabaseObjectProcessor;
+use wcf\system\user\notification\object\IUserNotificationObject;
/**
* This interface defines the basic methods every notification object type should implement.
/**
* Gets notification objects by their IDs.
*
- * @param array<integer> $objectIDs
- * @return array<\wcf\system\user\notification\object\IUserNotificationObject>
+ * @param integer[] $objectIDs
+ * @return IUserNotificationObject[]
*/
public function getObjectsByIDs(array $objectIDs);
}
/**
* Resets the user storage for given users.
*
- * @param array<integer> $userIDs
+ * @param integer[] $userIDs
*/
public function resetUserStorage(array $userIDs);
}
* Resets the object watch cache for all subscriber of the given object.
*
* @param string $objectType
- * @param array<integer> $objectIDs
+ * @param integer[] $objectIDs
*/
public function resetObjects($objectType, array $objectIDs) {
// get object type id
* Deletes the given objects.
*
* @param string $objectType
- * @param array<integer> $objectIDs
- * @param array<integer> $userIDs
+ * @param integer[] $objectIDs
+ * @param integer[] $userIDs
*/
public function deleteObjects($objectType, array $objectIDs, array $userIDs = array()) {
// get object type id
<?php
namespace wcf\system\user\online\location;
use wcf\data\user\online\UserOnline;
+use wcf\data\user\User;
use wcf\data\user\UserList;
use wcf\system\WCF;
class UserLocation implements IUserOnlineLocation {
/**
* user ids
- * @var array<integer>
+ * @var integer[]
*/
protected $userIDs = array();
/**
* list of users
- * @var array<\wcf\data\user\User>
+ * @var User[]
*/
protected $users = null;
class UserStorageHandler extends SingletonFactory {
/**
* data cache
- * @var array<array>
+ * @var mixed[][]
*/
protected $cache = array();
/**
* list of outdated data records
- * @var array<array>
+ * @var mixed[][]
*/
protected $resetFields = array();
/**
* list of updated or new data records
- * @var array<array>
+ * @var mixed[][]
*/
protected $updateFields = array();
/**
* Loads storage for a given set of users.
*
- * @param array<integer> $userIDs
+ * @param integer[] $userIDs
*/
public function loadStorage(array $userIDs) {
$tmp = array();
/**
* Returns stored data for given users.
*
- * @param array<integer> $userIDs
+ * @param integer[] $userIDs
* @param string $field
- * @return array<array>
+ * @return mixed[]
*/
public function getStorage(array $userIDs, $field) {
$data = array();
/**
* Removes a data record from database.
*
- * @param array<integer> $userIDs
+ * @param integer[] $userIDs
* @param string $field
*/
public function reset(array $userIDs, $field) {
<?php
namespace wcf\system\worker;
+use wcf\data\object\type\ObjectType;
use wcf\data\object\type\ObjectTypeCache;
use wcf\system\request\LinkHandler;
use wcf\system\WCF;
/**
* object types
- * @var array<\wcf\data\object\type\ObjectType>
+ * @var ObjectType[]
*/
public $objectTypes = array();
/**
* result date
- * @var array<integer>
+ * @var integer[]
*/
protected static $result = array();
/**
* valid ranges for each known field (range for 'day of month' is missing
* since it varies from month to month)
- * @var array<integer>
+ * @var integer[]
*/
public static $ranges = array(
'minute' => array(0, 59),
/**
* list of available time zones
- * @var array<string>
+ * @var string[]
*/
protected static $availableTimezones = array(
// there is not support for UTC-12:00 in php
/**
* order of the week days
- * @var array<string>
+ * @var string[]
*/
private static $weekDays = null;
/**
* order of the week days (short textual representation)
- * @var array<string>
+ * @var string[]
*/
private static $shortWeekDays = null;
/**
* Returns a list of available timezones.
*
- * @return array<string>
+ * @return string[]
*/
public static function getAvailableTimezones() {
return self::$availableTimezones;
/**
* Returns the order of the week days.
*
- * @return array<string>
+ * @return string[]
*/
public static function getWeekDays() {
if (self::$weekDays === null) {
/**
* Returns the order of the week days (short textual representation).
*
- * @return array<string>
+ * @return string[]
*/
public static function getShortWeekDays() {
if (self::$shortWeekDays === null) {
/**
* all files with full path
- * @var array<string>
+ * @var string[]
*/
protected $files = array();
/**
* all files with filename as key and DirectoryIterator object as value
- * @var array<\DirectoryIterator>
+ * @var \DirectoryIterator[]
*/
protected $fileObjects = array();
/**
* all recursive and non-recursive instances of DirectoryUtil
- * @var array<array>
+ * @var DirectoryUtil[][]
*/
protected static $instances = array(
true => array(), // recursive instances
/**
* request headers
- * @var array<string>
+ * @var string[]
*/
private $headers = array();
/**
* legacy headers
- * @var array<string>
+ * @var string[]
*/
private $legacyHeaders = array();
/**
* reply headers
- * @var array<string>
+ * @var string[]
*/
private $replyHeaders = array();
* Constructs a new instance of HTTPRequest.
*
* @param string $url URL to connect to
- * @param array<string> $options
+ * @param string[] $options
* @param mixed $postParameters Parameters to send via POST
* @param array $files Files to attach to the request
*/
*
* @param float $latitude
* @param float $longitude
- * @return array<float>
+ * @return float[]
*/
public static function latitudeLongitudeToCartesian($latitude, $longitude) {
$lambda = $longitude * pi() / 180;
$phi = $latitude * pi() / 180;
return array(
- 6371 * cos($phi) * cos($lambda), // x
- 6371 * cos($phi) * sin($lambda), // y
- 6371 * sin($phi) // z
+ 6371 * cos($phi) * cos($lambda), // x
+ 6371 * cos($phi) * sin($lambda), // y
+ 6371 * sin($phi) // z
);
}
* Returns the mentioned users in the given text.
*
* @param string $text
- * @return array<string>
+ * @return string[]
*/
public static function getMentionedUsers($text) {
// remove quotes
* Returns the quoted users in the given text.
*
* @param string $text
- * @return array<string>
+ * @return string[]
*/
public static function getQuotedUsers($text) {
$usernames = array();
/**
* list of supported encryption type by software identifier
- * @var array<string>
+ * @var string[]
*/
private static $supportedEncryptionTypes = array(
'ipb2', // Invision Power Board 2.x
/**
* local string stack
- * @var array<string>
+ * @var string[]
*/
protected static $stringStack = array();
*
* @param string $string
* @param integer $length
- * @return array<string>
+ * @return string[]
*/
public static function split($string, $length = 1) {
$result = array();
* Reads errors from libxml since be bypassed built-in error handler.
*
* @see \wcf\util\XML::__construct()
- * @return array<array>
+ * @return string[][]
*/
protected function pollErrors() {
$errors = array();
* Begins a new element.
*
* @param string $element
- * @param array<string> $attributes
+ * @param string[] $attributes
*/
public function startElement($element, array $attributes = array()) {
$this->xml->startElement($element);
*
* @param string $element
* @param string $cdata
- * @param array<string> $attributes
+ * @param string[] $attributes
*/
public function writeElement($element, $cdata, array $attributes = array()) {
$this->startElement($element);
/**
* Writes a list of attributes to last opened element.
*
- * @param array<string> $attributes
+ * @param string[] $attributes
*/
public function writeAttributes(array $attributes) {
foreach ($attributes as $attribute => $value) {