Page MenuHomePhabricator

D9856.diff
No OneTemporary

D9856.diff

diff --git a/src/__phutil_library_init__.php b/src/__phutil_library_init__.php
--- a/src/__phutil_library_init__.php
+++ b/src/__phutil_library_init__.php
@@ -7,9 +7,6 @@
require_once(__DIR__.'/moduleutils/PhutilBootloaderException.php');
require_once(__DIR__.'/moduleutils/PhutilLibraryConflictException.php');
-/**
- * @group library
- */
function __phutil_autoload($class_name) {
// Occurs in PHP 5.2 with call_user_func(array($this, 'self::f')).
if ($class_name == 'self' || $class_name == 'parent') {
diff --git a/src/aphront/storage/connection/AphrontDatabaseConnection.php b/src/aphront/storage/connection/AphrontDatabaseConnection.php
--- a/src/aphront/storage/connection/AphrontDatabaseConnection.php
+++ b/src/aphront/storage/connection/AphrontDatabaseConnection.php
@@ -2,10 +2,8 @@
/**
* @task xaction Transaction Management
- * @group storage
*/
-abstract class AphrontDatabaseConnection
- implements PhutilQsprintfInterface {
+abstract class AphrontDatabaseConnection implements PhutilQsprintfInterface {
private $transactionState;
diff --git a/src/aphront/storage/connection/AphrontDatabaseTransactionState.php b/src/aphront/storage/connection/AphrontDatabaseTransactionState.php
--- a/src/aphront/storage/connection/AphrontDatabaseTransactionState.php
+++ b/src/aphront/storage/connection/AphrontDatabaseTransactionState.php
@@ -2,8 +2,6 @@
/**
* Represents current transaction state of a connection.
- *
- * @group storage
*/
final class AphrontDatabaseTransactionState {
diff --git a/src/aphront/storage/connection/AphrontIsolatedDatabaseConnection.php b/src/aphront/storage/connection/AphrontIsolatedDatabaseConnection.php
--- a/src/aphront/storage/connection/AphrontIsolatedDatabaseConnection.php
+++ b/src/aphront/storage/connection/AphrontIsolatedDatabaseConnection.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group storage
- */
final class AphrontIsolatedDatabaseConnection
extends AphrontDatabaseConnection {
diff --git a/src/aphront/storage/connection/mysql/AphrontMySQLDatabaseConnection.php b/src/aphront/storage/connection/mysql/AphrontMySQLDatabaseConnection.php
--- a/src/aphront/storage/connection/mysql/AphrontMySQLDatabaseConnection.php
+++ b/src/aphront/storage/connection/mysql/AphrontMySQLDatabaseConnection.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group storage
- */
final class AphrontMySQLDatabaseConnection
extends AphrontMySQLDatabaseConnectionBase {
diff --git a/src/aphront/storage/connection/mysql/AphrontMySQLDatabaseConnectionBase.php b/src/aphront/storage/connection/mysql/AphrontMySQLDatabaseConnectionBase.php
--- a/src/aphront/storage/connection/mysql/AphrontMySQLDatabaseConnectionBase.php
+++ b/src/aphront/storage/connection/mysql/AphrontMySQLDatabaseConnectionBase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group storage
- */
abstract class AphrontMySQLDatabaseConnectionBase
extends AphrontDatabaseConnection {
diff --git a/src/aphront/storage/connection/mysql/AphrontMySQLiDatabaseConnection.php b/src/aphront/storage/connection/mysql/AphrontMySQLiDatabaseConnection.php
--- a/src/aphront/storage/connection/mysql/AphrontMySQLiDatabaseConnection.php
+++ b/src/aphront/storage/connection/mysql/AphrontMySQLiDatabaseConnection.php
@@ -1,8 +1,6 @@
<?php
/**
- * @group storage
- *
* @phutil-external-symbol class mysqli
*/
final class AphrontMySQLiDatabaseConnection
diff --git a/src/aphront/storage/exception/AphrontQueryAccessDeniedException.php b/src/aphront/storage/exception/AphrontQueryAccessDeniedException.php
--- a/src/aphront/storage/exception/AphrontQueryAccessDeniedException.php
+++ b/src/aphront/storage/exception/AphrontQueryAccessDeniedException.php
@@ -1,7 +1,4 @@
<?php
-/**
- * @group storage
- */
final class AphrontQueryAccessDeniedException
- extends AphrontQueryRecoverableException { }
+ extends AphrontQueryRecoverableException {}
diff --git a/src/aphront/storage/exception/AphrontQueryConnectionException.php b/src/aphront/storage/exception/AphrontQueryConnectionException.php
--- a/src/aphront/storage/exception/AphrontQueryConnectionException.php
+++ b/src/aphront/storage/exception/AphrontQueryConnectionException.php
@@ -1,6 +1,3 @@
<?php
-/**
- * @group storage
- */
-final class AphrontQueryConnectionException extends AphrontQueryException { }
+final class AphrontQueryConnectionException extends AphrontQueryException {}
diff --git a/src/aphront/storage/exception/AphrontQueryConnectionLostException.php b/src/aphront/storage/exception/AphrontQueryConnectionLostException.php
--- a/src/aphront/storage/exception/AphrontQueryConnectionLostException.php
+++ b/src/aphront/storage/exception/AphrontQueryConnectionLostException.php
@@ -1,7 +1,4 @@
<?php
-/**
- * @group storage
- */
final class AphrontQueryConnectionLostException
- extends AphrontQueryRecoverableException { }
+ extends AphrontQueryRecoverableException {}
diff --git a/src/aphront/storage/exception/AphrontQueryCountException.php b/src/aphront/storage/exception/AphrontQueryCountException.php
--- a/src/aphront/storage/exception/AphrontQueryCountException.php
+++ b/src/aphront/storage/exception/AphrontQueryCountException.php
@@ -1,6 +1,3 @@
<?php
-/**
- * @group storage
- */
-final class AphrontQueryCountException extends AphrontQueryException { }
+final class AphrontQueryCountException extends AphrontQueryException {}
diff --git a/src/aphront/storage/exception/AphrontQueryDeadlockException.php b/src/aphront/storage/exception/AphrontQueryDeadlockException.php
--- a/src/aphront/storage/exception/AphrontQueryDeadlockException.php
+++ b/src/aphront/storage/exception/AphrontQueryDeadlockException.php
@@ -1,7 +1,4 @@
<?php
-/**
- * @group storage
- */
final class AphrontQueryDeadlockException
- extends AphrontQueryRecoverableException { }
+ extends AphrontQueryRecoverableException {}
diff --git a/src/aphront/storage/exception/AphrontQueryDuplicateKeyException.php b/src/aphront/storage/exception/AphrontQueryDuplicateKeyException.php
--- a/src/aphront/storage/exception/AphrontQueryDuplicateKeyException.php
+++ b/src/aphront/storage/exception/AphrontQueryDuplicateKeyException.php
@@ -1,8 +1,3 @@
<?php
-/**
- * @group storage
- */
-final class AphrontQueryDuplicateKeyException extends AphrontQueryException {
-
-}
+final class AphrontQueryDuplicateKeyException extends AphrontQueryException {}
diff --git a/src/aphront/storage/exception/AphrontQueryException.php b/src/aphront/storage/exception/AphrontQueryException.php
--- a/src/aphront/storage/exception/AphrontQueryException.php
+++ b/src/aphront/storage/exception/AphrontQueryException.php
@@ -1,7 +1,6 @@
<?php
/**
- * @group storage
* @concrete-extensible
*/
-class AphrontQueryException extends Exception { }
+class AphrontQueryException extends Exception {}
diff --git a/src/aphront/storage/exception/AphrontQueryNotSupportedException.php b/src/aphront/storage/exception/AphrontQueryNotSupportedException.php
--- a/src/aphront/storage/exception/AphrontQueryNotSupportedException.php
+++ b/src/aphront/storage/exception/AphrontQueryNotSupportedException.php
@@ -1,8 +1,3 @@
<?php
-/**
- * @group storage
- */
-final class AphrontQueryNotSupportedException extends AphrontQueryException {
-
-}
+final class AphrontQueryNotSupportedException extends AphrontQueryException {}
diff --git a/src/aphront/storage/exception/AphrontQueryObjectMissingException.php b/src/aphront/storage/exception/AphrontQueryObjectMissingException.php
--- a/src/aphront/storage/exception/AphrontQueryObjectMissingException.php
+++ b/src/aphront/storage/exception/AphrontQueryObjectMissingException.php
@@ -1,6 +1,3 @@
<?php
-/**
- * @group storage
- */
-final class AphrontQueryObjectMissingException extends AphrontQueryException { }
+final class AphrontQueryObjectMissingException extends AphrontQueryException {}
diff --git a/src/aphront/storage/exception/AphrontQueryParameterException.php b/src/aphront/storage/exception/AphrontQueryParameterException.php
--- a/src/aphront/storage/exception/AphrontQueryParameterException.php
+++ b/src/aphront/storage/exception/AphrontQueryParameterException.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group storage
- */
final class AphrontQueryParameterException extends AphrontQueryException {
private $query;
diff --git a/src/aphront/storage/exception/AphrontQueryRecoverableException.php b/src/aphront/storage/exception/AphrontQueryRecoverableException.php
--- a/src/aphront/storage/exception/AphrontQueryRecoverableException.php
+++ b/src/aphront/storage/exception/AphrontQueryRecoverableException.php
@@ -1,9 +1,3 @@
<?php
-/**
- * @group storage
- */
-abstract class AphrontQueryRecoverableException
- extends AphrontQueryException {
-
-}
+abstract class AphrontQueryRecoverableException extends AphrontQueryException {}
diff --git a/src/aphront/storage/exception/AphrontQuerySchemaException.php b/src/aphront/storage/exception/AphrontQuerySchemaException.php
--- a/src/aphront/storage/exception/AphrontQuerySchemaException.php
+++ b/src/aphront/storage/exception/AphrontQuerySchemaException.php
@@ -1,8 +1,3 @@
<?php
-/**
- * @group storage
- */
-final class AphrontQuerySchemaException extends AphrontQueryException {
-
-}
+final class AphrontQuerySchemaException extends AphrontQueryException {}
diff --git a/src/aphront/writeguard/AphrontScopedUnguardedWriteCapability.php b/src/aphront/writeguard/AphrontScopedUnguardedWriteCapability.php
--- a/src/aphront/writeguard/AphrontScopedUnguardedWriteCapability.php
+++ b/src/aphront/writeguard/AphrontScopedUnguardedWriteCapability.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group aphront
- */
final class AphrontScopedUnguardedWriteCapability {
final public function __destruct() {
diff --git a/src/aphront/writeguard/AphrontWriteGuard.php b/src/aphront/writeguard/AphrontWriteGuard.php
--- a/src/aphront/writeguard/AphrontWriteGuard.php
+++ b/src/aphront/writeguard/AphrontWriteGuard.php
@@ -27,8 +27,6 @@
* @task disable Disabling Protection
* @task manage Managing Write Guards
* @task internal Internals
- *
- * @group aphront
*/
final class AphrontWriteGuard {
@@ -285,4 +283,5 @@
'to exit abruptly while debugging.');
}
}
+
}
diff --git a/src/aphront/writeguard/event/AphrontWriteGuardExitEventListener.php b/src/aphront/writeguard/event/AphrontWriteGuardExitEventListener.php
--- a/src/aphront/writeguard/event/AphrontWriteGuardExitEventListener.php
+++ b/src/aphront/writeguard/event/AphrontWriteGuardExitEventListener.php
@@ -2,8 +2,6 @@
/**
* Listener for "will exit abruptly" events. Shuts down the attached write guard
* before request exits.
- *
- * @group aphront
*/
final class AphrontWriteGuardExitEventListener extends PhutilEventListener {
@@ -18,4 +16,5 @@
AphrontWriteGuard::getInstance()->disposeAbruptly();
}
}
+
}
diff --git a/src/cache/PhutilKeyValueCache.php b/src/cache/PhutilKeyValueCache.php
--- a/src/cache/PhutilKeyValueCache.php
+++ b/src/cache/PhutilKeyValueCache.php
@@ -6,7 +6,6 @@
* with PhutilServiceProfiler.
*
* @task kvimpl Key-Value Cache Implementation
- * @group cache
*/
abstract class PhutilKeyValueCache {
diff --git a/src/cache/PhutilKeyValueCacheAPC.php b/src/cache/PhutilKeyValueCacheAPC.php
--- a/src/cache/PhutilKeyValueCacheAPC.php
+++ b/src/cache/PhutilKeyValueCacheAPC.php
@@ -3,8 +3,6 @@
/**
* Interface to the APC key-value cache. This is a very high-performance cache
* which is local to the current machine.
- *
- * @group cache
*/
final class PhutilKeyValueCacheAPC extends PhutilKeyValueCache {
diff --git a/src/cache/PhutilKeyValueCacheDirectory.php b/src/cache/PhutilKeyValueCacheDirectory.php
--- a/src/cache/PhutilKeyValueCacheDirectory.php
+++ b/src/cache/PhutilKeyValueCacheDirectory.php
@@ -20,7 +20,6 @@
*
* @task kvimpl Key-Value Cache Implementation
* @task storage Cache Storage
- * @group cache
*/
final class PhutilKeyValueCacheDirectory extends PhutilKeyValueCache {
diff --git a/src/cache/PhutilKeyValueCacheInRequest.php b/src/cache/PhutilKeyValueCacheInRequest.php
--- a/src/cache/PhutilKeyValueCacheInRequest.php
+++ b/src/cache/PhutilKeyValueCacheInRequest.php
@@ -12,8 +12,6 @@
* If using this cache improves application performance, especially if it
* improves it significantly, it may indicate an architectural problem in your
* application.
- *
- * @group cache
*/
final class PhutilKeyValueCacheInRequest extends PhutilKeyValueCache {
diff --git a/src/cache/PhutilKeyValueCacheMemcache.php b/src/cache/PhutilKeyValueCacheMemcache.php
--- a/src/cache/PhutilKeyValueCacheMemcache.php
+++ b/src/cache/PhutilKeyValueCacheMemcache.php
@@ -2,7 +2,6 @@
/**
* @task memcache Managing Memcache
- * @group cache
*/
final class PhutilKeyValueCacheMemcache extends PhutilKeyValueCache {
diff --git a/src/cache/PhutilKeyValueCacheOnDisk.php b/src/cache/PhutilKeyValueCacheOnDisk.php
--- a/src/cache/PhutilKeyValueCacheOnDisk.php
+++ b/src/cache/PhutilKeyValueCacheOnDisk.php
@@ -14,7 +14,6 @@
*
* @task kvimpl Key-Value Cache Implementation
* @task storage Cache Storage
- * @group cache
*/
final class PhutilKeyValueCacheOnDisk extends PhutilKeyValueCache {
diff --git a/src/cache/PhutilKeyValueCacheStack.php b/src/cache/PhutilKeyValueCacheStack.php
--- a/src/cache/PhutilKeyValueCacheStack.php
+++ b/src/cache/PhutilKeyValueCacheStack.php
@@ -7,7 +7,6 @@
* - For writes, we set the keys in each cache.
*
* @task config Configuring the Stack
- * @group cache
*/
final class PhutilKeyValueCacheStack extends PhutilKeyValueCache {
diff --git a/src/channel/PhutilChannel.php b/src/channel/PhutilChannel.php
--- a/src/channel/PhutilChannel.php
+++ b/src/channel/PhutilChannel.php
@@ -26,8 +26,6 @@
* @task wait Waiting for Activity
* @task update Responding to Activity
* @task impl Channel Implementation
- *
- * @group channel
*/
abstract class PhutilChannel {
diff --git a/src/channel/PhutilChannelChannel.php b/src/channel/PhutilChannelChannel.php
--- a/src/channel/PhutilChannelChannel.php
+++ b/src/channel/PhutilChannelChannel.php
@@ -7,8 +7,6 @@
* semantics with @{class:PhutilProtocolChannel}).
*
* The implementation of this class is entirely uninteresting.
- *
- * @group channel
*/
abstract class PhutilChannelChannel extends PhutilChannel {
diff --git a/src/channel/PhutilExecChannel.php b/src/channel/PhutilExecChannel.php
--- a/src/channel/PhutilExecChannel.php
+++ b/src/channel/PhutilExecChannel.php
@@ -41,8 +41,6 @@
* the implementation of this class is fairly straightforward.
*
* @task construct Construction
- *
- * @group channel
*/
final class PhutilExecChannel extends PhutilChannel {
diff --git a/src/channel/PhutilMetricsChannel.php b/src/channel/PhutilMetricsChannel.php
--- a/src/channel/PhutilMetricsChannel.php
+++ b/src/channel/PhutilMetricsChannel.php
@@ -6,8 +6,6 @@
*
* @task metrics Channel Metrics
* @task impl Implementation
- *
- * @group channel
*/
final class PhutilMetricsChannel extends PhutilChannelChannel {
diff --git a/src/channel/PhutilProtocolChannel.php b/src/channel/PhutilProtocolChannel.php
--- a/src/channel/PhutilProtocolChannel.php
+++ b/src/channel/PhutilProtocolChannel.php
@@ -9,8 +9,6 @@
* @task io Reading and Writing
* @task protocol Protocol Implementation
* @task wait Waiting for Activity
- *
- * @group channel
*/
abstract class PhutilProtocolChannel extends PhutilChannelChannel {
diff --git a/src/channel/PhutilSocketChannel.php b/src/channel/PhutilSocketChannel.php
--- a/src/channel/PhutilSocketChannel.php
+++ b/src/channel/PhutilSocketChannel.php
@@ -16,8 +16,6 @@
* fopen('php://stdout', 'w'));
*
* @task construct Construction
- *
- * @group channel
*/
final class PhutilSocketChannel extends PhutilChannel {
diff --git a/src/conduit/ConduitClient.php b/src/conduit/ConduitClient.php
--- a/src/conduit/ConduitClient.php
+++ b/src/conduit/ConduitClient.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group conduit
- */
final class ConduitClient {
private $uri;
diff --git a/src/conduit/ConduitClientException.php b/src/conduit/ConduitClientException.php
--- a/src/conduit/ConduitClientException.php
+++ b/src/conduit/ConduitClientException.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group conduit
- */
final class ConduitClientException extends Exception {
protected $errorCode;
diff --git a/src/conduit/ConduitFuture.php b/src/conduit/ConduitFuture.php
--- a/src/conduit/ConduitFuture.php
+++ b/src/conduit/ConduitFuture.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group conduit
- */
final class ConduitFuture extends FutureProxy {
protected $client;
diff --git a/src/console/PhutilConsole.php b/src/console/PhutilConsole.php
--- a/src/console/PhutilConsole.php
+++ b/src/console/PhutilConsole.php
@@ -10,7 +10,6 @@
* @task construct Construction
* @task interface Interfacing with the User
* @task internal Internals
- * @group console
*/
final class PhutilConsole {
diff --git a/src/console/PhutilConsoleFormatter.php b/src/console/PhutilConsoleFormatter.php
--- a/src/console/PhutilConsoleFormatter.php
+++ b/src/console/PhutilConsoleFormatter.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group console
- */
final class PhutilConsoleFormatter {
private static $colorCodes = array(
diff --git a/src/console/PhutilConsoleServer.php b/src/console/PhutilConsoleServer.php
--- a/src/console/PhutilConsoleServer.php
+++ b/src/console/PhutilConsoleServer.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group console
- */
final class PhutilConsoleServer {
private $clients = array();
diff --git a/src/console/PhutilConsoleServerChannel.php b/src/console/PhutilConsoleServerChannel.php
--- a/src/console/PhutilConsoleServerChannel.php
+++ b/src/console/PhutilConsoleServerChannel.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group console
- */
final class PhutilConsoleServerChannel extends PhutilChannelChannel {
public function didReceiveStderr(PhutilExecChannel $channel, $stderr) {
diff --git a/src/console/PhutilConsoleStdinNotInteractiveException.php b/src/console/PhutilConsoleStdinNotInteractiveException.php
--- a/src/console/PhutilConsoleStdinNotInteractiveException.php
+++ b/src/console/PhutilConsoleStdinNotInteractiveException.php
@@ -5,13 +5,13 @@
* @{function:phutil_console_confirm} but stdin is not an interactive TTY so
* the user can't possibly respond. Usually this means the user ran the command
* with something piped into stdin.
- *
- * @group console
*/
final class PhutilConsoleStdinNotInteractiveException extends Exception {
+
public function __construct() {
parent::__construct(
'The program is attempting to read user input, but stdin is being piped '.
'from some other source (not a TTY).');
}
+
}
diff --git a/src/console/PhutilInteractiveEditor.php b/src/console/PhutilInteractiveEditor.php
--- a/src/console/PhutilInteractiveEditor.php
+++ b/src/console/PhutilInteractiveEditor.php
@@ -14,7 +14,6 @@
* @task create Creating a New Editor
* @task edit Editing Interactively
* @task config Configuring Options
- * @group console
*/
final class PhutilInteractiveEditor {
@@ -279,4 +278,5 @@
'Unable to launch an interactive text editor. Set the EDITOR '.
'environment variable to an appropriate editor.');
}
+
}
diff --git a/src/console/__tests__/PhutilConsoleWrapTestCase.php b/src/console/__tests__/PhutilConsoleWrapTestCase.php
--- a/src/console/__tests__/PhutilConsoleWrapTestCase.php
+++ b/src/console/__tests__/PhutilConsoleWrapTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class PhutilConsoleWrapTestCase extends PhutilTestCase {
public function testWrap() {
@@ -46,5 +43,4 @@
$indent = 20));
}
-
}
diff --git a/src/console/format.php b/src/console/format.php
--- a/src/console/format.php
+++ b/src/console/format.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group console
- */
function phutil_console_format($format /* ... */) {
$args = func_get_args();
return call_user_func_array(
@@ -11,9 +8,6 @@
}
-/**
- * @group console
- */
function phutil_console_confirm($prompt, $default_no = true) {
$prompt_options = $default_no ? '[y/N]' : '[Y/n]';
@@ -31,11 +25,7 @@
}
-/**
- * @group console
- */
function phutil_console_prompt($prompt, $history = '') {
-
echo "\n\n";
$prompt = phutil_console_wrap($prompt.' ', 4);
@@ -93,8 +83,6 @@
* @param string Text to wrap.
* @param int Optional indent level.
* @return string Wrapped text.
- *
- * @group console
*/
function phutil_console_wrap($text, $indent = 0) {
$lines = array();
@@ -182,9 +170,6 @@
}
-/**
- * @group console
- */
function phutil_console_require_tty() {
if (function_exists('posix_isatty') && !posix_isatty(STDIN)) {
throw new PhutilConsoleStdinNotInteractiveException();
@@ -196,7 +181,6 @@
* Determine the width of the terminal, if possible. Returns `null` on failure.
*
* @return int|null Terminal width in characters, or null on failure.
- * @group console
*/
function phutil_console_get_terminal_width() {
if (phutil_is_windows()) {
diff --git a/src/daemon/PhutilDaemon.php b/src/daemon/PhutilDaemon.php
--- a/src/daemon/PhutilDaemon.php
+++ b/src/daemon/PhutilDaemon.php
@@ -3,7 +3,6 @@
/**
* Scaffolding for implementing robust background processing scripts.
*
- * @group daemon
* @stable
*/
abstract class PhutilDaemon {
diff --git a/src/daemon/PhutilDaemonOverseer.php b/src/daemon/PhutilDaemonOverseer.php
--- a/src/daemon/PhutilDaemonOverseer.php
+++ b/src/daemon/PhutilDaemonOverseer.php
@@ -2,8 +2,6 @@
/**
* Oversees a daemon and restarts it if it fails.
- *
- * @group daemon
*/
final class PhutilDaemonOverseer {
diff --git a/src/daemon/torture/PhutilExcessiveServiceCallsDaemon.php b/src/daemon/torture/PhutilExcessiveServiceCallsDaemon.php
--- a/src/daemon/torture/PhutilExcessiveServiceCallsDaemon.php
+++ b/src/daemon/torture/PhutilExcessiveServiceCallsDaemon.php
@@ -2,8 +2,6 @@
/**
* Daemon which makes a lot of service calls.
- *
- * @group testcase
*/
final class PhutilExcessiveServiceCallsDaemon extends PhutilTortureTestDaemon {
diff --git a/src/daemon/torture/PhutilFatalDaemon.php b/src/daemon/torture/PhutilFatalDaemon.php
--- a/src/daemon/torture/PhutilFatalDaemon.php
+++ b/src/daemon/torture/PhutilFatalDaemon.php
@@ -2,8 +2,6 @@
/**
* Daemon which fails immediately.
- *
- * @group testcase
*/
final class PhutilFatalDaemon extends PhutilTortureTestDaemon {
diff --git a/src/daemon/torture/PhutilHangForeverDaemon.php b/src/daemon/torture/PhutilHangForeverDaemon.php
--- a/src/daemon/torture/PhutilHangForeverDaemon.php
+++ b/src/daemon/torture/PhutilHangForeverDaemon.php
@@ -2,8 +2,6 @@
/**
* Daemon which hangs immediately.
- *
- * @group testcase
*/
final class PhutilHangForeverDaemon extends PhutilTortureTestDaemon {
diff --git a/src/daemon/torture/PhutilNiceDaemon.php b/src/daemon/torture/PhutilNiceDaemon.php
--- a/src/daemon/torture/PhutilNiceDaemon.php
+++ b/src/daemon/torture/PhutilNiceDaemon.php
@@ -2,8 +2,6 @@
/**
* Daemon which behaves properly.
- *
- * @group testcase
*/
final class PhutilNiceDaemon extends PhutilTortureTestDaemon {
diff --git a/src/daemon/torture/PhutilProcessGroupDaemon.php b/src/daemon/torture/PhutilProcessGroupDaemon.php
--- a/src/daemon/torture/PhutilProcessGroupDaemon.php
+++ b/src/daemon/torture/PhutilProcessGroupDaemon.php
@@ -2,8 +2,6 @@
/**
* Daemon which spawns nonterminating, death-resistant children.
- *
- * @group testcase
*/
final class PhutilProcessGroupDaemon extends PhutilTortureTestDaemon {
diff --git a/src/daemon/torture/PhutilSaturateStdoutDaemon.php b/src/daemon/torture/PhutilSaturateStdoutDaemon.php
--- a/src/daemon/torture/PhutilSaturateStdoutDaemon.php
+++ b/src/daemon/torture/PhutilSaturateStdoutDaemon.php
@@ -2,8 +2,6 @@
/**
* Daemon which dumps huge amounts of data to stdout.
- *
- * @group testcase
*/
final class PhutilSaturateStdoutDaemon extends PhutilTortureTestDaemon {
diff --git a/src/daemon/torture/PhutilTortureTestDaemon.php b/src/daemon/torture/PhutilTortureTestDaemon.php
--- a/src/daemon/torture/PhutilTortureTestDaemon.php
+++ b/src/daemon/torture/PhutilTortureTestDaemon.php
@@ -2,9 +2,5 @@
/**
* Daemons which misbehave in specific ways.
- *
- * @group testcase
*/
-abstract class PhutilTortureTestDaemon extends PhutilDaemon {
-
-}
+abstract class PhutilTortureTestDaemon extends PhutilDaemon {}
diff --git a/src/error/PhutilAggregateException.php b/src/error/PhutilAggregateException.php
--- a/src/error/PhutilAggregateException.php
+++ b/src/error/PhutilAggregateException.php
@@ -22,7 +22,6 @@
* }
*
* @concrete-extensible
- * @group error
*/
class PhutilAggregateException extends Exception {
diff --git a/src/error/PhutilErrorHandler.php b/src/error/PhutilErrorHandler.php
--- a/src/error/PhutilErrorHandler.php
+++ b/src/error/PhutilErrorHandler.php
@@ -28,7 +28,6 @@
* @task exutil Exception Utilities
* @task trap Error Traps
* @task internal Internals
- * @group error
*/
final class PhutilErrorHandler {
diff --git a/src/error/PhutilProxyException.php b/src/error/PhutilProxyException.php
--- a/src/error/PhutilProxyException.php
+++ b/src/error/PhutilProxyException.php
@@ -6,7 +6,6 @@
* @{class:PhutilErrorHandler} to unnest exceptions in a forward-compatible way.
*
* @concrete-extensible
- * @group error
*/
class PhutilProxyException extends Exception {
diff --git a/src/error/phlog.php b/src/error/phlog.php
--- a/src/error/phlog.php
+++ b/src/error/phlog.php
@@ -10,7 +10,6 @@
* logs/consoles.
* @param ... Other values to be logged.
* @return wild Passed $value.
- * @group error
*/
function phlog($value/* , ... */) {
@@ -58,7 +57,6 @@
* 'line' and 'trace' are always available. Other keys may be
* present, depending on the event type.
* @return void
- * @group error
*/
function phutil_error_listener_example($event, $value, array $metadata) {
throw new Exception('This is just an example function!');
diff --git a/src/events/PhutilEvent.php b/src/events/PhutilEvent.php
--- a/src/events/PhutilEvent.php
+++ b/src/events/PhutilEvent.php
@@ -1,7 +1,6 @@
<?php
/**
- * @group event
* @concrete-extensible
*/
class PhutilEvent {
diff --git a/src/events/PhutilEventEngine.php b/src/events/PhutilEventEngine.php
--- a/src/events/PhutilEventEngine.php
+++ b/src/events/PhutilEventEngine.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group event
- */
final class PhutilEventEngine {
private static $instance;
diff --git a/src/events/PhutilEventListener.php b/src/events/PhutilEventListener.php
--- a/src/events/PhutilEventListener.php
+++ b/src/events/PhutilEventListener.php
@@ -1,7 +1,6 @@
<?php
/**
- * @group event
* @stable
*/
abstract class PhutilEventListener {
diff --git a/src/events/constant/PhutilEventConstants.php b/src/events/constant/PhutilEventConstants.php
--- a/src/events/constant/PhutilEventConstants.php
+++ b/src/events/constant/PhutilEventConstants.php
@@ -1,8 +1,3 @@
<?php
-/**
- * @group event
- */
-abstract class PhutilEventConstants {
-
-}
+abstract class PhutilEventConstants {}
diff --git a/src/events/constant/PhutilEventType.php b/src/events/constant/PhutilEventType.php
--- a/src/events/constant/PhutilEventType.php
+++ b/src/events/constant/PhutilEventType.php
@@ -1,7 +1,6 @@
<?php
/**
- * @group event
* @concrete-extensible
*/
class PhutilEventType extends PhutilEventConstants {
diff --git a/src/filesystem/FileFinder.php b/src/filesystem/FileFinder.php
--- a/src/filesystem/FileFinder.php
+++ b/src/filesystem/FileFinder.php
@@ -14,7 +14,6 @@
* @task config Configuring File Queries
* @task exec Executing the File Query
* @task internal Internal
- * @group filesystem
*/
final class FileFinder {
diff --git a/src/filesystem/FileList.php b/src/filesystem/FileList.php
--- a/src/filesystem/FileList.php
+++ b/src/filesystem/FileList.php
@@ -17,7 +17,6 @@
*
* @task create Creating a File List
* @task test Testing File Lists
- * @group filesystem
*/
final class FileList {
diff --git a/src/filesystem/Filesystem.php b/src/filesystem/Filesystem.php
--- a/src/filesystem/Filesystem.php
+++ b/src/filesystem/Filesystem.php
@@ -14,7 +14,6 @@
* @task path Paths
* @task exec Executables
* @task assert Assertions
- * @group filesystem
*/
final class Filesystem {
@@ -97,22 +96,20 @@
}
/**
- * Write a file in a manner similar to file_put_contents(), but only
- * touch the file if the contents are different, and throw detailed
- * exceptions on failure.
+ * Write a file in a manner similar to `file_put_contents()`, but only touch
+ * the file if the contents are different, and throw detailed exceptions on
+ * failure.
*
- * As this function is used in build steps to update code, if we write
- * a new file, we do so by writing to a temporary file and moving it
- * into place. This allows a concurrently reading process to see
- * a consistent view of the file without needing locking; any given
- * read of the file is guaranteed to be self-consistent and not see
- * partial file contents.
+ * As this function is used in build steps to update code, if we write a new
+ * file, we do so by writing to a temporary file and moving it into place.
+ * This allows a concurrently reading process to see a consistent view of the
+ * file without needing locking; any given read of the file is guaranteed to
+ * be self-consistent and not see partial file contents.
*
* @param string file path to write
* @param string data to write
*
- * @return boolean indicating whether the file was changed by this
- * function
+ * @return boolean indicating whether the file was changed by this function.
*/
public static function writeFileIfChanged($path, $data) {
if (file_exists($path)) {
diff --git a/src/filesystem/FilesystemException.php b/src/filesystem/FilesystemException.php
--- a/src/filesystem/FilesystemException.php
+++ b/src/filesystem/FilesystemException.php
@@ -3,8 +3,6 @@
/**
* Exception thrown by Filesystem to indicate an error accessing the file
* system.
- *
- * @group filesystem
*/
final class FilesystemException extends Exception {
diff --git a/src/filesystem/PhutilDeferredLog.php b/src/filesystem/PhutilDeferredLog.php
--- a/src/filesystem/PhutilDeferredLog.php
+++ b/src/filesystem/PhutilDeferredLog.php
@@ -35,7 +35,6 @@
* @task log Logging
* @task write Writing the Log
* @task internal Internals
- * @group filesystem
*/
final class PhutilDeferredLog {
diff --git a/src/filesystem/PhutilDirectoryFixture.php b/src/filesystem/PhutilDirectoryFixture.php
--- a/src/filesystem/PhutilDirectoryFixture.php
+++ b/src/filesystem/PhutilDirectoryFixture.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group filesystem
- */
final class PhutilDirectoryFixture {
protected $path;
diff --git a/src/filesystem/PhutilFileLock.php b/src/filesystem/PhutilFileLock.php
--- a/src/filesystem/PhutilFileLock.php
+++ b/src/filesystem/PhutilFileLock.php
@@ -16,8 +16,6 @@
*
* @task construct Constructing Locks
* @task impl Implementation
- *
- * @group filesystem
*/
final class PhutilFileLock extends PhutilLock {
@@ -117,4 +115,5 @@
$this->handle = null;
}
+
}
diff --git a/src/filesystem/PhutilLock.php b/src/filesystem/PhutilLock.php
--- a/src/filesystem/PhutilLock.php
+++ b/src/filesystem/PhutilLock.php
@@ -24,8 +24,6 @@
* @task status Determining Lock Status
* @task lock Locking
* @task internal Internals
- *
- * @group filesystem
*/
abstract class PhutilLock {
diff --git a/src/filesystem/TempFile.php b/src/filesystem/TempFile.php
--- a/src/filesystem/TempFile.php
+++ b/src/filesystem/TempFile.php
@@ -13,8 +13,6 @@
* @task create Creating a Temporary File
* @task config Configuration
* @task internal Internals
- *
- * @group filesystem
*/
final class TempFile {
diff --git a/src/filesystem/__tests__/FileFinderTestCase.php b/src/filesystem/__tests__/FileFinderTestCase.php
--- a/src/filesystem/__tests__/FileFinderTestCase.php
+++ b/src/filesystem/__tests__/FileFinderTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class FileFinderTestCase extends PhutilTestCase {
protected function getFinder() {
@@ -26,8 +23,9 @@
$this->assertTrue(array_key_exists('test.txt', $files));
$this->assertTrue(array_key_exists('file.txt', $files));
$this->assertTrue(
- array_key_exists('include_dir.txt/subdir.txt/alsoinclude.txt',
- $files));
+ array_key_exists(
+ 'include_dir.txt/subdir.txt/alsoinclude.txt',
+ $files));
$this->assertFalse(array_key_exists('test', $files));
$this->assertTrue(array_key_exists('.hidden.txt', $files));
$this->assertFalse(array_key_exists('exclude/file.txt', $files));
@@ -38,14 +36,18 @@
}
// Test checksums.
- $this->assertEqual($files['test.txt'],
- 'aea46212fa8b8d0e0e6aa34a15c9e2f5');
- $this->assertEqual($files['file.txt'],
- '725130ba6441eadb4e5d807898e0beae');
- $this->assertEqual($files['.hidden.txt'],
- 'b6cfc9ce9afe12b258ee1c19c235aa27');
- $this->assertEqual($files['include_dir.txt/subdir.txt/alsoinclude.txt'],
- '91e5c1ad76ff229c6456ac92e74e1d9f');
+ $this->assertEqual(
+ $files['test.txt'],
+ 'aea46212fa8b8d0e0e6aa34a15c9e2f5');
+ $this->assertEqual(
+ $files['file.txt'],
+ '725130ba6441eadb4e5d807898e0beae');
+ $this->assertEqual(
+ $files['.hidden.txt'],
+ 'b6cfc9ce9afe12b258ee1c19c235aa27');
+ $this->assertEqual(
+ $files['include_dir.txt/subdir.txt/alsoinclude.txt'],
+ '91e5c1ad76ff229c6456ac92e74e1d9f');
}
}
@@ -87,8 +89,9 @@
$this->assertTrue(array_key_exists('test.txt', $files));
$this->assertTrue(array_key_exists('file.txt', $files));
$this->assertTrue(
- array_key_exists('include_dir.txt/subdir.txt/alsoinclude.txt',
- $files));
+ array_key_exists(
+ 'include_dir.txt/subdir.txt/alsoinclude.txt',
+ $files));
$this->assertFalse(array_key_exists('test', $files));
$this->assertTrue(array_key_exists('.hidden.txt', $files));
$this->assertFalse(array_key_exists('exclude/file.txt', $files));
@@ -113,8 +116,9 @@
// Test whether the correct files were found.
$this->assertTrue(
- array_key_exists('include_dir.txt/subdir.txt/alsoinclude.txt',
- $files));
+ array_key_exists(
+ 'include_dir.txt/subdir.txt/alsoinclude.txt',
+ $files));
// Ensure that only the one file was found.
$this->assertEqual(1, count($files));
}
diff --git a/src/filesystem/__tests__/FilesystemTestCase.php b/src/filesystem/__tests__/FilesystemTestCase.php
--- a/src/filesystem/__tests__/FilesystemTestCase.php
+++ b/src/filesystem/__tests__/FilesystemTestCase.php
@@ -1,12 +1,8 @@
<?php
-/**
- * @group testcase
- */
final class FilesystemTestCase extends PhutilTestCase {
public function testBinaryExists() {
-
// Test for the `which` binary on Linux, and the `where` binary on Windows,
// because `which which` is cute.
@@ -28,7 +24,6 @@
}
public function testResolveBinary() {
-
// Test to make sure resolveBinary() returns the full path to the `which`
// and `where` binaries.
@@ -76,7 +71,6 @@
$caught = $ex;
}
$this->assertTrue($caught instanceof Exception);
-
}
}
diff --git a/src/filesystem/__tests__/PhutilDeferredLogTestCase.php b/src/filesystem/__tests__/PhutilDeferredLogTestCase.php
--- a/src/filesystem/__tests__/PhutilDeferredLogTestCase.php
+++ b/src/filesystem/__tests__/PhutilDeferredLogTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class PhutilDeferredLogTestCase extends PhutilTestCase {
public function testLogging() {
@@ -78,7 +75,6 @@
'a' => 'a',
'b' => 'b',
));
-
}
public function testLogWriteFailure() {
diff --git a/src/filesystem/__tests__/PhutilFileLockTestCase.php b/src/filesystem/__tests__/PhutilFileLockTestCase.php
--- a/src/filesystem/__tests__/PhutilFileLockTestCase.php
+++ b/src/filesystem/__tests__/PhutilFileLockTestCase.php
@@ -1,12 +1,8 @@
<?php
-/**
- * @group testcase
- */
final class PhutilFileLockTestCase extends PhutilTestCase {
public function testLockTesting() {
-
// We should be able to acquire locks.
$file = new TempFile();
@@ -17,7 +13,6 @@
}
public function testLockHolding() {
-
// When a process is holding a lock, other processes should be unable
// to acquire it.
@@ -32,7 +27,6 @@
}
public function testInProcessLocking() {
-
// Other processes should be unable to lock a file if we hold the lock.
$file = new TempFile();
@@ -73,7 +67,6 @@
}
public function testRelock() {
-
// Trying to lock a file twice should throw an exception.
$file = new TempFile();
@@ -91,7 +84,6 @@
}
public function testExcessiveUnlock() {
-
// Trying to unlock a file twice should throw an exception.
$file = new TempFile();
@@ -111,7 +103,6 @@
}
public function testUnlockAll() {
-
// unlockAll() should release all locks.
$file = new TempFile();
@@ -135,7 +126,6 @@
}
public function testIsLocked() {
-
// isLocked() should report lock status accurately.
$file = new TempFile();
diff --git a/src/filesystem/linesofalarge/LinesOfALarge.php b/src/filesystem/linesofalarge/LinesOfALarge.php
--- a/src/filesystem/linesofalarge/LinesOfALarge.php
+++ b/src/filesystem/linesofalarge/LinesOfALarge.php
@@ -32,7 +32,6 @@
* @task config Configuration
* @task internals Internals
* @task iterator Iterator Interface
- * @group filesystem
*/
abstract class LinesOfALarge implements Iterator {
@@ -136,7 +135,6 @@
* @task iterator
*/
final public function next() {
-
// Consume the stream a chunk at a time into an internal buffer, then
// read lines out of that buffer. This gives us flexibility (stream sources
// only need to be able to read blocks of bytes) and performance (we can
diff --git a/src/filesystem/linesofalarge/LinesOfALargeExecFuture.php b/src/filesystem/linesofalarge/LinesOfALargeExecFuture.php
--- a/src/filesystem/linesofalarge/LinesOfALargeExecFuture.php
+++ b/src/filesystem/linesofalarge/LinesOfALargeExecFuture.php
@@ -21,7 +21,6 @@
*
* @task construct Construction
* @task internals Internals
- * @group filesystem
*/
final class LinesOfALargeExecFuture extends LinesOfALarge {
@@ -61,8 +60,8 @@
/**
- * The PHP foreach() construct calls rewind() once, so we allow the first
- * rewind(), without effect. Subsequent rewinds mean misuse.
+ * The PHP `foreach()` construct calls rewind() once, so we allow the first
+ * `rewind()`, without effect. Subsequent rewinds mean misuse.
*
* @return void
* @task internals
@@ -101,7 +100,7 @@
// has exited.
if ($future->isReady()) {
- // Throw if the process exits with a nozero status code. This makes
+ // Throw if the process exits with a nonzero status code. This makes
// error handling simpler, and prevents us from returning part of a line
// if the process terminates mid-output.
$future->resolvex();
diff --git a/src/filesystem/linesofalarge/LinesOfALargeFile.php b/src/filesystem/linesofalarge/LinesOfALargeFile.php
--- a/src/filesystem/linesofalarge/LinesOfALargeFile.php
+++ b/src/filesystem/linesofalarge/LinesOfALargeFile.php
@@ -16,7 +16,6 @@
*
* @task construct Construction
* @task internals Internals
- * @group filesystem
*/
final class LinesOfALargeFile extends LinesOfALarge {
@@ -92,7 +91,6 @@
* @task internals
*/
public function readMore() {
-
// NOTE: At least on OSX in reasonably normal test cases, increasing the
// size of this read has no impact on performance.
diff --git a/src/filesystem/linesofalarge/__tests__/LinesOfALargeExecFutureTestCase.php b/src/filesystem/linesofalarge/__tests__/LinesOfALargeExecFutureTestCase.php
--- a/src/filesystem/linesofalarge/__tests__/LinesOfALargeExecFutureTestCase.php
+++ b/src/filesystem/linesofalarge/__tests__/LinesOfALargeExecFutureTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class LinesOfALargeExecFutureTestCase extends PhutilTestCase {
// Most of the core functionality of LinesOfALarge is covered by the
diff --git a/src/filesystem/linesofalarge/__tests__/LinesOfALargeFileTestCase.php b/src/filesystem/linesofalarge/__tests__/LinesOfALargeFileTestCase.php
--- a/src/filesystem/linesofalarge/__tests__/LinesOfALargeFileTestCase.php
+++ b/src/filesystem/linesofalarge/__tests__/LinesOfALargeFileTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class LinesOfALargeFileTestCase extends PhutilTestCase {
public function testBasics() {
diff --git a/src/future/Future.php b/src/future/Future.php
--- a/src/future/Future.php
+++ b/src/future/Future.php
@@ -5,7 +5,6 @@
* pending computation. For a more complete overview of futures, see
* @{article:Using Futures}.
*
- * @group futures
* @stable
*/
abstract class Future {
@@ -86,10 +85,10 @@
/**
* Retrieve a list of sockets which we can wait to become readable while
- * a future is resolving. If your future has sockets which can be select()ed,
- * return them here (or in getWriteSockets()) to make the resolve loop do a
- * select(). If you do not return sockets in either case, you'll get a busy
- * wait.
+ * a future is resolving. If your future has sockets which can be
+ * `select()`ed, return them here (or in @{method:getWriteSockets}) to make
+ * the resolve loop do a `select()`. If you do not return sockets in either
+ * case, you'll get a busy wait.
*
* @return list A list of sockets which we expect to become readable.
*/
@@ -100,7 +99,7 @@
/**
* Retrieve a list of sockets which we can wait to become writable while a
- * future is resolving. See getReadSockets().
+ * future is resolving. See @{method:getReadSockets}.
*
* @return list A list of sockets which we expect to become writable.
*/
@@ -161,12 +160,13 @@
/**
* Retrieve the final result of the future. This method will be called after
- * the future is ready (as per isReady()) but before results are passed back
- * to the caller. The major use of this function is that you can override it
- * in subclasses to do postprocessing or error checking, which is
+ * the future is ready (as per @{method:isReady}) but before results are
+ * passed back to the caller. The major use of this function is that you can
+ * override it in subclasses to do postprocessing or error checking, which is
* particularly useful if building application-specific futures on top of
- * primitive transport futures (like CurlFuture and ExecFuture) which can
- * make it tricky to hook this logic into the main pipeline.
+ * primitive transport futures (like @{class:CurlFuture} and
+ * @{class:ExecFuture}) which can make it tricky to hook this logic into the
+ * main pipeline.
*
* @return mixed Final resolution of this future.
*/
diff --git a/src/future/FutureIterator.php b/src/future/FutureIterator.php
--- a/src/future/FutureIterator.php
+++ b/src/future/FutureIterator.php
@@ -27,8 +27,6 @@
* @task config Configuring Iteration
* @task iterator Iterator Interface
* @task internal Internals
- *
- * @group futures
*/
final class FutureIterator implements Iterator {
diff --git a/src/future/FutureProxy.php b/src/future/FutureProxy.php
--- a/src/future/FutureProxy.php
+++ b/src/future/FutureProxy.php
@@ -1,10 +1,9 @@
<?php
/**
- * Wraps another Future and allows you to post-process its result once it
- * resolves.
+ * Wraps another @{class:Future} and allows you to post-process its result once
+ * it resolves.
*
- * @group futures
* @stable
*/
abstract class FutureProxy extends Future {
diff --git a/src/future/ImmediateFuture.php b/src/future/ImmediateFuture.php
--- a/src/future/ImmediateFuture.php
+++ b/src/future/ImmediateFuture.php
@@ -3,8 +3,6 @@
/**
* Degenerate future which returns an already-existing result without performing
* any computation.
- *
- * @group futures
*/
final class ImmediateFuture extends Future {
diff --git a/src/future/__tests__/FutureIteratorTestCase.php b/src/future/__tests__/FutureIteratorTestCase.php
--- a/src/future/__tests__/FutureIteratorTestCase.php
+++ b/src/future/__tests__/FutureIteratorTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class FutureIteratorTestCase extends PhutilTestCase {
public function testAddingFuture() {
diff --git a/src/future/asana/PhutilAsanaFuture.php b/src/future/asana/PhutilAsanaFuture.php
--- a/src/future/asana/PhutilAsanaFuture.php
+++ b/src/future/asana/PhutilAsanaFuture.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group asana
- */
final class PhutilAsanaFuture extends FutureProxy {
private $future;
diff --git a/src/future/aws/PhutilAWSEC2Future.php b/src/future/aws/PhutilAWSEC2Future.php
--- a/src/future/aws/PhutilAWSEC2Future.php
+++ b/src/future/aws/PhutilAWSEC2Future.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group aws
- */
final class PhutilAWSEC2Future extends PhutilAWSFuture {
public function getServiceName() {
diff --git a/src/future/aws/PhutilAWSException.php b/src/future/aws/PhutilAWSException.php
--- a/src/future/aws/PhutilAWSException.php
+++ b/src/future/aws/PhutilAWSException.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group aws
- */
final class PhutilAWSException extends Exception {
private $httpStatus;
diff --git a/src/future/aws/PhutilAWSFuture.php b/src/future/aws/PhutilAWSFuture.php
--- a/src/future/aws/PhutilAWSFuture.php
+++ b/src/future/aws/PhutilAWSFuture.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group aws
- */
abstract class PhutilAWSFuture extends FutureProxy {
private $future;
diff --git a/src/future/aws/PhutilAWSS3Future.php b/src/future/aws/PhutilAWSS3Future.php
--- a/src/future/aws/PhutilAWSS3Future.php
+++ b/src/future/aws/PhutilAWSS3Future.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group aws
- */
final class PhutilAWSS3Future extends PhutilAWSFuture {
public function getServiceName() {
diff --git a/src/future/exec/CommandException.php b/src/future/exec/CommandException.php
--- a/src/future/exec/CommandException.php
+++ b/src/future/exec/CommandException.php
@@ -2,7 +2,6 @@
/**
* Exception thrown when a system command fails.
- * @group exec
*/
final class CommandException extends Exception {
diff --git a/src/future/exec/ExecFuture.php b/src/future/exec/ExecFuture.php
--- a/src/future/exec/ExecFuture.php
+++ b/src/future/exec/ExecFuture.php
@@ -18,7 +18,6 @@
* @task info Command Information
* @task interact Interacting With Commands
* @task internal Internals
- * @group exec
*/
final class ExecFuture extends Future {
@@ -61,7 +60,7 @@
*
* $future = new ExecFuture('wc -l %s', $file_path);
*
- * @param string ##sprintf()##-style command string which will be passed
+ * @param string `sprintf()`-style command string which will be passed
* through @{function:csprintf} with the rest of the arguments.
* @param ... Zero or more additional arguments for @{function:csprintf}.
* @return ExecFuture ExecFuture for running the specified command.
@@ -165,8 +164,8 @@
* NOTE: If you @{method:resolve} a future with a read buffer limit, you may
* block forever!
*
- * TODO: We should probably release the read buffer limit during `resolve()`,
- * or otherwise detect this. For now, be careful.
+ * TODO: We should probably release the read buffer limit during
+ * @{method:resolve}, or otherwise detect this. For now, be careful.
*
* @param int|null Maximum buffer size, or `null` for unlimited.
* @return this
@@ -322,7 +321,7 @@
* } while ($done === null);
*
* Conceivably you might also need to do this if you're writing a client using
- * ExecFuture and ##netcat##, but you probably should not do that.
+ * @{class:ExecFuture} and `netcat`, but you probably should not do that.
*
* NOTE: This completely discards the data. It won't be available when the
* future resolves. This is almost certainly only useful if you need the
@@ -809,7 +808,7 @@
/**
- * Execute proc_get_status(), but avoid pitfalls.
+ * Execute `proc_get_status()`, but avoid pitfalls.
*
* @return dict Process status.
* @task internal
@@ -871,5 +870,4 @@
return $wait;
}
-
}
diff --git a/src/future/exec/PhutilExecPassthru.php b/src/future/exec/PhutilExecPassthru.php
--- a/src/future/exec/PhutilExecPassthru.php
+++ b/src/future/exec/PhutilExecPassthru.php
@@ -18,8 +18,6 @@
*
* @task command Executing Passthru Commands
* @task config Configuring Passthru Commands
- *
- * @group exec
*/
final class PhutilExecPassthru extends Phobject {
diff --git a/src/future/exec/__tests__/ExecFutureTestCase.php b/src/future/exec/__tests__/ExecFutureTestCase.php
--- a/src/future/exec/__tests__/ExecFutureTestCase.php
+++ b/src/future/exec/__tests__/ExecFutureTestCase.php
@@ -1,12 +1,8 @@
<?php
-/**
- * @group testcase
- */
final class ExecFutureTestCase extends PhutilTestCase {
public function testEmptyWrite() {
-
// NOTE: This is mostly testing that we don't hang while doing an empty
// write.
@@ -16,7 +12,6 @@
}
public function testKeepPipe() {
-
// NOTE: This is mosty testing the semantics of $keep_pipe in write().
list($stdout) = id(new ExecFuture('cat'))
@@ -31,7 +26,6 @@
}
public function testLargeBuffer() {
-
// NOTE: This is mostly a coverage test to hit branches where we're still
// flushing a buffer.
@@ -52,7 +46,6 @@
}
public function testResolveTimeoutTestShouldRunLessThan1Sec() {
-
// NOTE: This tests interactions between the resolve() timeout and the
// ExecFuture timeout, which are similar but not identical.
@@ -72,7 +65,6 @@
public function testTimeoutTestShouldRunLessThan1Sec() {
-
// NOTE: This is partly testing that we choose appropriate select wait
// times; this test should run for significantly less than 1 second.
diff --git a/src/future/exec/execx.php b/src/future/exec/execx.php
--- a/src/future/exec/execx.php
+++ b/src/future/exec/execx.php
@@ -10,7 +10,6 @@
* @param string sprintf()-style command pattern to execute.
* @param ... Arguments to sprintf pattern.
* @return array List of stdout and stderr.
- * @group exec
*/
function execx($cmd /* , ... */) {
$args = func_get_args();
@@ -24,14 +23,13 @@
*
* list ($err, $stdout, $stderr) = exec_manual('ls %s', $file);
*
- * When invoking this function, you must manually handle the error
- * condition. Error flows can often be simplified by using @{function:execx}
- * instead, which throws an exception when it encounters an error.
+ * When invoking this function, you must manually handle the error condition.
+ * Error flows can often be simplified by using @{function:execx} instead,
+ * which throws an exception when it encounters an error.
*
* @param string sprintf()-style command pattern to execute.
* @param ... Arguments to sprintf pattern.
* @return array List of return code, stdout, and stderr.
- * @group exec
*/
function exec_manual($cmd /* , ... */) {
$args = func_get_args();
@@ -46,7 +44,6 @@
* @param string sprintf()-style command pattern to execute.
* @param ... Arguments to sprintf pattern.
* @return int Return code.
- * @group exec
*/
function phutil_passthru($cmd /* , ... */) {
$args = func_get_args();
@@ -62,7 +59,6 @@
* @return string Human-readable signal name.
*/
function phutil_get_signal_name($signo) {
-
// These aren't always defined; try our best to look up the signal name.
$constant_names = array(
'SIGHUP',
diff --git a/src/future/functions.php b/src/future/functions.php
--- a/src/future/functions.php
+++ b/src/future/functions.php
@@ -5,7 +5,6 @@
*
* @param list List of @{class:Future}s.
* @return FutureIterator New @{class:FutureIterator} over those futures.
- * @group futures
*/
function Futures($futures) {
return new FutureIterator($futures);
diff --git a/src/future/http/BaseHTTPFuture.php b/src/future/http/BaseHTTPFuture.php
--- a/src/future/http/BaseHTTPFuture.php
+++ b/src/future/http/BaseHTTPFuture.php
@@ -17,7 +17,6 @@
* @task config Configuring the Request
* @task resolve Resolving the Request
* @task internal Internals
- * @group futures
*/
abstract class BaseHTTPFuture extends Future {
@@ -221,7 +220,7 @@
/**
* Set the status codes that are expected in the response.
* If set, isError on the status object will return true for status codes
- * that are not in the input array. Otherise, isError will be true for any
+ * that are not in the input array. Otherwise, isError will be true for any
* HTTP status code outside the 2xx range (notwithstanding other errors such
* as connection or transport issues).
*
@@ -268,8 +267,8 @@
/**
- * Exception-oriented resolve(). Throws if the status indicates an error
- * occurred.
+ * Exception-oriented @{method:resolve}. Throws if the status indicates an
+ * error occurred.
*
* @return tuple HTTP request result <body, headers> tuple.
* @task resolve
@@ -410,4 +409,5 @@
$raw_response);
return array($status, $body, $headers);
}
+
}
diff --git a/src/future/http/HTTPFuture.php b/src/future/http/HTTPFuture.php
--- a/src/future/http/HTTPFuture.php
+++ b/src/future/http/HTTPFuture.php
@@ -2,10 +2,10 @@
/**
* Socket-based HTTP future, for making HTTP requests using future semantics.
- * This is an alternative to :CURLFuture which has better resolution behavior
- * (select()-based wait instead of busy wait) but fewer features. You should
- * prefer this class to :CURLFuture unless you need its advanced features (like
- * HTTP/1.1, chunked transfer encoding, gzip, etc.).
+ * This is an alternative to @{class:CURLFuture} which has better resolution
+ * behavior (select()-based wait instead of busy wait) but fewer features. You
+ * should prefer this class to @{class:CURLFuture} unless you need its advanced
+ * features (like HTTP/1.1, chunked transfer encoding, gzip, etc.).
*
* Example Usage
*
@@ -19,11 +19,9 @@
* $response_body,
* $headers) = $future->resolve();
*
- * Prefer resolvex() to resolve() as the former throws
+ * Prefer @{method:resolvex} to @{method:resolve} as the former throws
* @{class:HTTPFutureResponseStatusHTTP} on failures, which includes an
* informative exception message.
- *
- * @group futures
*/
final class HTTPFuture extends BaseHTTPFuture {
@@ -168,7 +166,6 @@
}
private function buildSocket() {
-
$errno = null;
$errstr = null;
$socket = @stream_socket_client(
@@ -196,7 +193,6 @@
}
private function checkSocket() {
-
$timeout = false;
$now = microtime(true);
if (($now - $this->stateStartTime) > $this->getTimeout()) {
diff --git a/src/future/http/HTTPSFuture.php b/src/future/http/HTTPSFuture.php
--- a/src/future/http/HTTPSFuture.php
+++ b/src/future/http/HTTPSFuture.php
@@ -2,8 +2,6 @@
/**
* Very basic HTTPS future.
- *
- * @group futures
*/
final class HTTPSFuture extends BaseHTTPFuture {
@@ -129,7 +127,7 @@
/**
* Load contents of remote URI. Behaves pretty much like
- * `@file_get_contents($uri)` but doesn't require `allow_url_fopen`.
+ * `@file_get_contents($uri)` but doesn't require `allow_url_fopen`.
*
* @param string
* @param float
diff --git a/src/future/http/status/HTTPFutureResponseStatus.php b/src/future/http/status/HTTPFutureResponseStatus.php
--- a/src/future/http/status/HTTPFutureResponseStatus.php
+++ b/src/future/http/status/HTTPFutureResponseStatus.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group futures
- */
abstract class HTTPFutureResponseStatus extends Exception {
private $statusCode;
diff --git a/src/future/http/status/HTTPFutureResponseStatusCURL.php b/src/future/http/status/HTTPFutureResponseStatusCURL.php
--- a/src/future/http/status/HTTPFutureResponseStatusCURL.php
+++ b/src/future/http/status/HTTPFutureResponseStatusCURL.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group futures
- */
final class HTTPFutureResponseStatusCURL extends HTTPFutureResponseStatus {
protected function getErrorCodeType($code) {
diff --git a/src/future/http/status/HTTPFutureResponseStatusHTTP.php b/src/future/http/status/HTTPFutureResponseStatusHTTP.php
--- a/src/future/http/status/HTTPFutureResponseStatusHTTP.php
+++ b/src/future/http/status/HTTPFutureResponseStatusHTTP.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group futures
- */
final class HTTPFutureResponseStatusHTTP extends HTTPFutureResponseStatus {
private $excerpt;
diff --git a/src/future/http/status/HTTPFutureResponseStatusParse.php b/src/future/http/status/HTTPFutureResponseStatusParse.php
--- a/src/future/http/status/HTTPFutureResponseStatusParse.php
+++ b/src/future/http/status/HTTPFutureResponseStatusParse.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group futures
- */
final class HTTPFutureResponseStatusParse extends HTTPFutureResponseStatus {
const ERROR_MALFORMED_RESPONSE = 1;
diff --git a/src/future/http/status/HTTPFutureResponseStatusTransport.php b/src/future/http/status/HTTPFutureResponseStatusTransport.php
--- a/src/future/http/status/HTTPFutureResponseStatusTransport.php
+++ b/src/future/http/status/HTTPFutureResponseStatusTransport.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group futures
- */
final class HTTPFutureResponseStatusTransport extends HTTPFutureResponseStatus {
const ERROR_TIMEOUT = 1;
diff --git a/src/future/paypal/PhutilPayPalAPIFuture.php b/src/future/paypal/PhutilPayPalAPIFuture.php
--- a/src/future/paypal/PhutilPayPalAPIFuture.php
+++ b/src/future/paypal/PhutilPayPalAPIFuture.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group paypal
- */
final class PhutilPayPalAPIFuture extends FutureProxy {
private $future;
diff --git a/src/future/twitch/PhutilTwitchFuture.php b/src/future/twitch/PhutilTwitchFuture.php
--- a/src/future/twitch/PhutilTwitchFuture.php
+++ b/src/future/twitch/PhutilTwitchFuture.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group twitch
- */
final class PhutilTwitchFuture extends FutureProxy {
private $future;
diff --git a/src/internationalization/PhutilPerson.php b/src/internationalization/PhutilPerson.php
--- a/src/internationalization/PhutilPerson.php
+++ b/src/internationalization/PhutilPerson.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group internationalization
- */
interface PhutilPerson {
const SEX_MALE = 'm';
const SEX_FEMALE = 'f';
@@ -10,5 +7,4 @@
public function getSex();
public function __toString();
-
}
diff --git a/src/internationalization/PhutilTranslator.php b/src/internationalization/PhutilTranslator.php
--- a/src/internationalization/PhutilTranslator.php
+++ b/src/internationalization/PhutilTranslator.php
@@ -1,9 +1,7 @@
<?php
-/**
- * @group internationalization
- */
final class PhutilTranslator {
+
static private $instance;
private $language = 'en';
diff --git a/src/internationalization/__tests__/PhutilPHTTestCase.php b/src/internationalization/__tests__/PhutilPHTTestCase.php
--- a/src/internationalization/__tests__/PhutilPHTTestCase.php
+++ b/src/internationalization/__tests__/PhutilPHTTestCase.php
@@ -2,8 +2,6 @@
/**
* Test cases for functions in pht.php.
- *
- * @group testcase
*/
final class PhutilPHTTestCase extends PhutilTestCase {
diff --git a/src/internationalization/__tests__/PhutilPersonTest.php b/src/internationalization/__tests__/PhutilPersonTest.php
--- a/src/internationalization/__tests__/PhutilPersonTest.php
+++ b/src/internationalization/__tests__/PhutilPersonTest.php
@@ -1,9 +1,7 @@
<?php
-/**
- * @group testcase
- */
final class PhutilPersonTest implements PhutilPerson {
+
private $sex = PhutilPerson::SEX_UNKNOWN;
public function getSex() {
diff --git a/src/internationalization/__tests__/PhutilTranslatorTestCase.php b/src/internationalization/__tests__/PhutilTranslatorTestCase.php
--- a/src/internationalization/__tests__/PhutilTranslatorTestCase.php
+++ b/src/internationalization/__tests__/PhutilTranslatorTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class PhutilTranslatorTestCase extends PhutilTestCase {
public function testEnglish() {
diff --git a/src/internationalization/pht.php b/src/internationalization/pht.php
--- a/src/internationalization/pht.php
+++ b/src/internationalization/pht.php
@@ -6,12 +6,10 @@
* `PhutilTranslator::getInstance()->addTranslations()` and language rules set
* by `PhutilTranslator::getInstance()->setLanguage()`.
*
- * @param string Translation identifier with sprintf() placeholders.
+ * @param string Translation identifier with `sprintf()` placeholders.
* @param mixed Value to select the variant from (e.g. singular or plural).
* @param ... Next values referenced from $text.
* @return string Translated string with substituted values.
- *
- * @group internationalization
*/
function pht($text, $variant = null /* , ... */) {
$args = func_get_args();
diff --git a/src/lexer/PhutilLexer.php b/src/lexer/PhutilLexer.php
--- a/src/lexer/PhutilLexer.php
+++ b/src/lexer/PhutilLexer.php
@@ -73,8 +73,6 @@
* @task lexerimpl Lexer Implementation
* @task rule Lexer Rules
* @task tokens Lexer Tokens
- *
- * @group lexer
*/
abstract class PhutilLexer {
diff --git a/src/lexer/PhutilPHPFragmentLexer.php b/src/lexer/PhutilPHPFragmentLexer.php
--- a/src/lexer/PhutilPHPFragmentLexer.php
+++ b/src/lexer/PhutilPHPFragmentLexer.php
@@ -7,8 +7,6 @@
*
* This lexer is not suitable for parser construction; it always lexes any
* input stream, even if the input is not PHP.
- *
- * @group lexer
*/
final class PhutilPHPFragmentLexer extends PhutilLexer {
@@ -264,7 +262,7 @@
array($identifier_ns_pattern, 'nc'),
array('', null, '!pop'),
)),
-
);
}
+
}
diff --git a/src/lexer/PhutilPythonFragmentLexer.php b/src/lexer/PhutilPythonFragmentLexer.php
--- a/src/lexer/PhutilPythonFragmentLexer.php
+++ b/src/lexer/PhutilPythonFragmentLexer.php
@@ -8,8 +8,6 @@
*
* This lexer is not suitable for parser construction; it always lexes any
* input stream, even if the input is not Python.
- *
- * @group lexer
*/
final class PhutilPythonFragmentLexer extends PhutilLexer {
@@ -203,7 +201,7 @@
array(
'%(\\(\\w+\\))?[-#0 +]*([0-9]+|[*])?(\\.([0-9]+|[*]))?'.
'[hlL]?[diouxXeEfFgGcrs%]',
- 'si'
+ 'si',
),
array('[^\\\\\'"%\\n]+', 's'),
// quotes, percents, and backslashes must be parsed one at a time
@@ -310,7 +308,7 @@
'tsqs_raw' => $tsqs,
'tdqs' => array_merge($stringescape, $tdqs),
'tsqs' => array_merge($stringescape, $tsqs),
-
);
}
+
}
diff --git a/src/lexer/PhutilShellLexer.php b/src/lexer/PhutilShellLexer.php
--- a/src/lexer/PhutilShellLexer.php
+++ b/src/lexer/PhutilShellLexer.php
@@ -2,8 +2,6 @@
/**
* Lexer for shell-like argument strings. Somewhat similar to Python's shlex.
- *
- * @group lexer
*/
final class PhutilShellLexer extends PhutilLexer {
@@ -84,4 +82,5 @@
),
);
}
+
}
diff --git a/src/lexer/PhutilSimpleOptionsLexer.php b/src/lexer/PhutilSimpleOptionsLexer.php
--- a/src/lexer/PhutilSimpleOptionsLexer.php
+++ b/src/lexer/PhutilSimpleOptionsLexer.php
@@ -8,8 +8,6 @@
* Values may be quoted and escaped:
*
* eyes="one, or two", legs="{^,\",^}"
- *
- * @group lexer
*/
final class PhutilSimpleOptionsLexer extends PhutilLexer {
@@ -88,4 +86,5 @@
),
);
}
+
}
diff --git a/src/lexer/PhutilTypeLexer.php b/src/lexer/PhutilTypeLexer.php
--- a/src/lexer/PhutilTypeLexer.php
+++ b/src/lexer/PhutilTypeLexer.php
@@ -3,8 +3,6 @@
/**
* Lexer for a simple type grammar. See @{class:PhutilTypeSpec} for a
* description.
- *
- * @group lexer
*/
final class PhutilTypeLexer extends PhutilLexer {
@@ -30,4 +28,5 @@
),
);
}
+
}
diff --git a/src/markup/PhutilMarkupEngine.php b/src/markup/PhutilMarkupEngine.php
--- a/src/markup/PhutilMarkupEngine.php
+++ b/src/markup/PhutilMarkupEngine.php
@@ -1,7 +1,6 @@
<?php
/**
- * @group markup
* @stable
*/
abstract class PhutilMarkupEngine {
@@ -19,8 +18,8 @@
abstract public function setConfig($key, $value);
/**
- * After text has been marked up with markupText(), you can retrieve any
- * metadata the markup process generated by calling this method. This is
+ * After text has been marked up with @{method:markupText}, you can retrieve
+ * any metadata the markup process generated by calling this method. This is
* a generic interface that allows rules to export extra information about
* text; consult the documentation for specific rules and blocks to see what
* metadata may be available in your configuration.
@@ -32,4 +31,5 @@
abstract public function getTextMetadata($key, $default = null);
abstract public function markupText($text);
+
}
diff --git a/src/markup/__tests__/PhutilMarkupTestCase.php b/src/markup/__tests__/PhutilMarkupTestCase.php
--- a/src/markup/__tests__/PhutilMarkupTestCase.php
+++ b/src/markup/__tests__/PhutilMarkupTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class PhutilMarkupTestCase extends PhutilTestCase {
public function testTagDefaults() {
@@ -246,23 +243,22 @@
hsprintf('</div>'),
)));
- $this->assertEqual(
- '<div><br /><hr /><wbr /></div>',
- phutil_tag(
- 'div',
- array(
- ),
+ $this->assertEqual(
+ '<div><br /><hr /><wbr /></div>',
+ phutil_tag(
+ 'div',
+ array(),
+ array(
array(
array(
+ phutil_tag('br'),
array(
- phutil_tag('br'),
- array(
- phutil_tag('hr'),
- ),
- phutil_tag('wbr'),
+ phutil_tag('hr'),
),
+ phutil_tag('wbr'),
),
- ))->getHTMLContent());
- }
+ ),
+ ))->getHTMLContent());
+ }
}
diff --git a/src/markup/__tests__/PhutilSafeHTMLTestCase.php b/src/markup/__tests__/PhutilSafeHTMLTestCase.php
--- a/src/markup/__tests__/PhutilSafeHTMLTestCase.php
+++ b/src/markup/__tests__/PhutilSafeHTMLTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class PhutilSafeHTMLTestCase extends PhutilTestCase {
public function testOperator() {
diff --git a/src/markup/engine/__tests__/PhutilRemarkupEngineTestCase.php b/src/markup/engine/__tests__/PhutilRemarkupEngineTestCase.php
--- a/src/markup/engine/__tests__/PhutilRemarkupEngineTestCase.php
+++ b/src/markup/engine/__tests__/PhutilRemarkupEngineTestCase.php
@@ -2,8 +2,6 @@
/**
* Test cases for @{class:PhutilRemarkupEngine}.
- *
- * @group testcase
*/
final class PhutilRemarkupEngineTestCase extends PhutilTestCase {
diff --git a/src/markup/engine/remarkup/PhutilRemarkupBlockStorage.php b/src/markup/engine/remarkup/PhutilRemarkupBlockStorage.php
--- a/src/markup/engine/remarkup/PhutilRemarkupBlockStorage.php
+++ b/src/markup/engine/remarkup/PhutilRemarkupBlockStorage.php
@@ -29,8 +29,6 @@
* security risks.
*
* This class generates keys, and stores the map of keys to replacement text.
- *
- * @group markup
*/
final class PhutilRemarkupBlockStorage {
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupBlockInterpreter.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupBlockInterpreter.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupBlockInterpreter.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupBlockInterpreter.php
@@ -1,7 +1,6 @@
<?php
/**
- * @group markup
* @stable
*/
abstract class PhutilRemarkupBlockInterpreter {
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineBlockRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineBlockRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineBlockRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineBlockRule.php
@@ -1,7 +1,6 @@
<?php
/**
- * @group markup
* @stable
*/
abstract class PhutilRemarkupEngineBlockRule {
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupCodeBlockRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupCodeBlockRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupCodeBlockRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupCodeBlockRule.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilRemarkupEngineRemarkupCodeBlockRule
extends PhutilRemarkupEngineBlockRule {
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupDefaultBlockRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupDefaultBlockRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupDefaultBlockRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupDefaultBlockRule.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilRemarkupEngineRemarkupDefaultBlockRule
extends PhutilRemarkupEngineBlockRule {
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupHeaderBlockRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupHeaderBlockRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupHeaderBlockRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupHeaderBlockRule.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilRemarkupEngineRemarkupHeaderBlockRule
extends PhutilRemarkupEngineBlockRule {
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupHorizontalRuleBlockRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupHorizontalRuleBlockRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupHorizontalRuleBlockRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupHorizontalRuleBlockRule.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilRemarkupEngineRemarkupHorizontalRuleBlockRule
extends PhutilRemarkupEngineBlockRule {
@@ -33,5 +30,4 @@
return phutil_tag('hr', array('class' => 'remarkup-hr'));
}
-
}
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupInlineBlockRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupInlineBlockRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupInlineBlockRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupInlineBlockRule.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilRemarkupEngineRemarkupInlineBlockRule
extends PhutilRemarkupEngineBlockRule {
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupInterpreterRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupInterpreterRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupInterpreterRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupInterpreterRule.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilRemarkupEngineRemarkupInterpreterRule
extends PhutilRemarkupEngineBlockRule {
@@ -28,7 +25,6 @@
}
public function markupText($text, $children) {
-
$lines = explode("\n", $text);
$first_key = head_key($lines);
$last_key = last_key($lines);
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupListBlockRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupListBlockRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupListBlockRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupListBlockRule.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilRemarkupEngineRemarkupListBlockRule
extends PhutilRemarkupEngineBlockRule {
@@ -59,7 +56,6 @@
const STRIP_BLOCK_PATTERN = '@^\s*(?:[-*#]+|[0-9]+[.)])\s*@';
public function markupText($text, $children) {
-
$items = array();
$lines = explode("\n", $text);
@@ -291,7 +287,7 @@
}
/**
- * See additional notes in markupText().
+ * See additional notes in @{method:markupText}.
*/
private function buildTree(array $items, $l, $r, $cur_level) {
if ($l == $r) {
@@ -353,10 +349,9 @@
/**
- * See additional notes in markupText().
+ * See additional notes in @{method:markupText}.
*/
private function adjustTreeStyleInformation(array &$tree) {
-
// The effect here is just to walk backward through the nodes at this level
// and apply the first style in the list to any empty nodes we inserted
// before it. As we go, also recurse down the tree.
@@ -379,7 +374,7 @@
/**
- * See additional notes in markupText().
+ * See additional notes in @{method:markupText}.
*/
private function renderTree(array $tree, $level, $has_marks) {
$style = idx(head($tree), 'style');
@@ -481,5 +476,4 @@
return $out;
}
-
}
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupLiteralBlockRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupLiteralBlockRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupLiteralBlockRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupLiteralBlockRule.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilRemarkupEngineRemarkupLiteralBlockRule
extends PhutilRemarkupEngineBlockRule {
@@ -33,4 +30,5 @@
$text = phutil_split_lines($text, $retain_endings = true);
return phutil_implode_html(phutil_tag('br', array()), $text);
}
+
}
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupNoteBlockRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupNoteBlockRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupNoteBlockRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupNoteBlockRule.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilRemarkupEngineRemarkupNoteBlockRule
extends PhutilRemarkupEngineBlockRule {
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupSimpleTableBlockRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupSimpleTableBlockRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupSimpleTableBlockRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupSimpleTableBlockRule.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilRemarkupEngineRemarkupSimpleTableBlockRule
extends PhutilRemarkupEngineBlockRule {
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupTableBlockRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupTableBlockRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupTableBlockRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupTableBlockRule.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilRemarkupEngineRemarkupTableBlockRule
extends PhutilRemarkupEngineBlockRule {
diff --git a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupTestInterpreterRule.php b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupTestInterpreterRule.php
--- a/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupTestInterpreterRule.php
+++ b/src/markup/engine/remarkup/blockrule/PhutilRemarkupEngineRemarkupTestInterpreterRule.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilRemarkupEngineRemarkupTestInterpreterRule
extends PhutilRemarkupBlockInterpreter {
diff --git a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRule.php b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRule.php
--- a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRule.php
+++ b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRule.php
@@ -1,7 +1,6 @@
<?php
/**
- * @group markup
* @stable
*/
abstract class PhutilRemarkupRule {
@@ -110,5 +109,4 @@
return (strpos($text, PhutilRemarkupBlockStorage::MAGIC_BYTE) === false);
}
-
}
diff --git a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleBold.php b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleBold.php
--- a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleBold.php
+++ b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleBold.php
@@ -1,10 +1,6 @@
<?php
-/**
- * @group markup
- */
-final class PhutilRemarkupRuleBold
- extends PhutilRemarkupRule {
+final class PhutilRemarkupRuleBold extends PhutilRemarkupRule {
public function getPriority() {
return 1000.0;
diff --git a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleDel.php b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleDel.php
--- a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleDel.php
+++ b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleDel.php
@@ -1,10 +1,6 @@
<?php
-/**
- * @group markup
- */
-final class PhutilRemarkupRuleDel
- extends PhutilRemarkupRule {
+final class PhutilRemarkupRuleDel extends PhutilRemarkupRule {
public function getPriority() {
return 1000.0;
diff --git a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleDocumentLink.php b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleDocumentLink.php
--- a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleDocumentLink.php
+++ b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleDocumentLink.php
@@ -1,10 +1,6 @@
<?php
-/**
- * @group markup
- */
-final class PhutilRemarkupRuleDocumentLink
- extends PhutilRemarkupRule {
+final class PhutilRemarkupRuleDocumentLink extends PhutilRemarkupRule {
public function getPriority() {
return 300.0;
diff --git a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleEscapeRemarkup.php b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleEscapeRemarkup.php
--- a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleEscapeRemarkup.php
+++ b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleEscapeRemarkup.php
@@ -1,10 +1,6 @@
<?php
-/**
- * @group markup
- */
-final class PhutilRemarkupRuleEscapeRemarkup
- extends PhutilRemarkupRule {
+final class PhutilRemarkupRuleEscapeRemarkup extends PhutilRemarkupRule {
public function getPriority() {
return 0;
diff --git a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleHyperlink.php b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleHyperlink.php
--- a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleHyperlink.php
+++ b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleHyperlink.php
@@ -1,18 +1,15 @@
<?php
/**
- * @group markup
* @concrete-extensible (TODO only needed by Facebook at the moment)
*/
-class PhutilRemarkupRuleHyperlink
- extends PhutilRemarkupRule {
+class PhutilRemarkupRuleHyperlink extends PhutilRemarkupRule {
public function getPriority() {
return 400.0;
}
public function apply($text) {
-
// Hyperlinks with explicit "<>" around them get linked exactly, without
// the "<>". Angle brackets are basically special and mean "this is a URL
// with weird characters". This is assumed to be reasonable because they
@@ -38,7 +35,6 @@
}
protected function markupHyperlink($matches) {
-
$protocols = $this->getEngine()->getConfig(
'uri.allowed-protocols',
array());
diff --git a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleItalic.php b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleItalic.php
--- a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleItalic.php
+++ b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleItalic.php
@@ -1,10 +1,6 @@
<?php
-/**
- * @group markup
- */
-final class PhutilRemarkupRuleItalic
- extends PhutilRemarkupRule {
+final class PhutilRemarkupRuleItalic extends PhutilRemarkupRule {
public function getPriority() {
return 1000.0;
diff --git a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleLinebreaks.php b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleLinebreaks.php
--- a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleLinebreaks.php
+++ b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleLinebreaks.php
@@ -1,10 +1,6 @@
<?php
-/**
- * @group markup
- */
-final class PhutilRemarkupRuleLinebreaks
- extends PhutilRemarkupRule {
+final class PhutilRemarkupRuleLinebreaks extends PhutilRemarkupRule {
public function apply($text) {
if ($this->getEngine()->isTextMode()) {
diff --git a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleMonospace.php b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleMonospace.php
--- a/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleMonospace.php
+++ b/src/markup/engine/remarkup/markuprule/PhutilRemarkupRuleMonospace.php
@@ -1,10 +1,6 @@
<?php
-/**
- * @group markup
- */
-final class PhutilRemarkupRuleMonospace
- extends PhutilRemarkupRule {
+final class PhutilRemarkupRuleMonospace extends PhutilRemarkupRule {
public function getPriority() {
return 100.0;
diff --git a/src/markup/render.php b/src/markup/render.php
--- a/src/markup/render.php
+++ b/src/markup/render.php
@@ -22,7 +22,6 @@
* @return PhutilSafeHTML Tag object.
*/
function phutil_tag($tag, array $attributes = array(), $content = null) {
-
// If the `href` attribute is present:
// - make sure it is not a "javascript:" URI. We never permit these.
// - if the tag is an `<a>` and the link is to some foreign resource,
@@ -122,16 +121,10 @@
return new PhutilSafeHTML('<'.$tag.$attr_string.'>'.$content.'</'.$tag.'>');
}
-/**
- * @group markup
- */
function phutil_tag_div($class, $content = null) {
return phutil_tag('div', array('class' => $class), $content);
}
-/**
- * @group markup
- */
function phutil_escape_html($string) {
if ($string instanceof PhutilSafeHTML) {
return $string;
@@ -166,17 +159,12 @@
return htmlspecialchars($string, ENT_QUOTES, 'UTF-8');
}
-/**
- * @group markup
- */
function phutil_escape_html_newlines($string) {
return PhutilSafeHTML::applyFunction('nl2br', $string);
}
/**
* Mark string as safe for use in HTML.
- *
- * @group markup
*/
function phutil_safe_html($string) {
if ($string == '') {
@@ -189,9 +177,7 @@
}
/**
- * HTML safe version of implode().
- *
- * @group markup
+ * HTML safe version of `implode()`.
*/
function phutil_implode_html($glue, array $pieces) {
$glue = phutil_escape_html($glue);
@@ -204,12 +190,10 @@
}
/**
- * Format a HTML code. This function behaves like sprintf(), except that all
+ * Format a HTML code. This function behaves like `sprintf()`, except that all
* the normal conversions (like %s) will be properly escaped.
- *
- * @group markup
*/
-function hsprintf($html/* , ... */) {
+function hsprintf($html /* , ... */) {
$args = func_get_args();
array_shift($args);
return new PhutilSafeHTML(
@@ -239,8 +223,6 @@
*
* @param string Some string.
* @return string URI encoded string, except for '/'.
- *
- * @group markup
*/
function phutil_escape_uri($string) {
return str_replace('%2F', '/', rawurlencode($string));
@@ -262,8 +244,6 @@
*
* @param string Some string.
* @return string URI encoded string that is safe for infix composition.
- *
- * @group markup
*/
function phutil_escape_uri_path_component($string) {
return rawurlencode(rawurlencode($string));
@@ -284,7 +264,6 @@
* from @{function:phutil_escape_uri_path_component} and
* then accessed via a web server.
* @return string Original string.
- * @group markup
*/
function phutil_unescape_uri_path_component($string) {
return rawurldecode($string);
diff --git a/src/markup/syntax/engine/PhutilDefaultSyntaxHighlighterEngine.php b/src/markup/syntax/engine/PhutilDefaultSyntaxHighlighterEngine.php
--- a/src/markup/syntax/engine/PhutilDefaultSyntaxHighlighterEngine.php
+++ b/src/markup/syntax/engine/PhutilDefaultSyntaxHighlighterEngine.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilDefaultSyntaxHighlighterEngine
extends PhutilSyntaxHighlighterEngine {
@@ -14,7 +11,6 @@
}
public function getLanguageFromFilename($filename) {
-
static $default_map = array(
// All files which have file extensions that we haven't already matched
// map to their extensions.
@@ -44,7 +40,6 @@
}
public function getHighlightFuture($language, $source) {
-
if ($language === null) {
$language = PhutilLanguageGuesser::guessLanguage($source);
}
@@ -99,4 +94,5 @@
return id(new PhutilDefaultSyntaxHighlighter())
->getHighlightFuture($source);
}
+
}
diff --git a/src/markup/syntax/engine/PhutilSyntaxHighlighterEngine.php b/src/markup/syntax/engine/PhutilSyntaxHighlighterEngine.php
--- a/src/markup/syntax/engine/PhutilSyntaxHighlighterEngine.php
+++ b/src/markup/syntax/engine/PhutilSyntaxHighlighterEngine.php
@@ -1,9 +1,7 @@
<?php
-/**
- * @group markup
- */
abstract class PhutilSyntaxHighlighterEngine {
+
abstract public function setConfig($key, $value);
abstract public function getHighlightFuture($language, $source);
abstract public function getLanguageFromFilename($filename);
diff --git a/src/markup/syntax/engine/__tests__/PhutilDefaultSyntaxHighlighterEngineTestCase.php b/src/markup/syntax/engine/__tests__/PhutilDefaultSyntaxHighlighterEngineTestCase.php
--- a/src/markup/syntax/engine/__tests__/PhutilDefaultSyntaxHighlighterEngineTestCase.php
+++ b/src/markup/syntax/engine/__tests__/PhutilDefaultSyntaxHighlighterEngineTestCase.php
@@ -2,8 +2,6 @@
/**
* Test cases for @{class:PhutilDefaultSyntaxHighlighterEngine}.
- *
- * @group testcase
*/
final class PhutilDefaultSyntaxHighlighterEngineTestCase
extends PhutilTestCase {
diff --git a/src/markup/syntax/highlighter/PhutilConsoleSyntaxHighlighter.php b/src/markup/syntax/highlighter/PhutilConsoleSyntaxHighlighter.php
--- a/src/markup/syntax/highlighter/PhutilConsoleSyntaxHighlighter.php
+++ b/src/markup/syntax/highlighter/PhutilConsoleSyntaxHighlighter.php
@@ -3,8 +3,6 @@
/**
* Simple syntax highlighter for console output. We just try to highlight the
* commands so it's easier to follow transcripts.
- *
- * @group markup
*/
final class PhutilConsoleSyntaxHighlighter {
@@ -17,7 +15,6 @@
}
public function getHighlightFuture($source) {
-
$in_command = false;
$lines = explode("\n", $source);
foreach ($lines as $key => $line) {
diff --git a/src/markup/syntax/highlighter/PhutilDefaultSyntaxHighlighter.php b/src/markup/syntax/highlighter/PhutilDefaultSyntaxHighlighter.php
--- a/src/markup/syntax/highlighter/PhutilDefaultSyntaxHighlighter.php
+++ b/src/markup/syntax/highlighter/PhutilDefaultSyntaxHighlighter.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilDefaultSyntaxHighlighter {
public function setConfig($key, $value) {
@@ -13,4 +10,5 @@
$result = hsprintf('%s', $source);
return new ImmediateFuture($result);
}
+
}
diff --git a/src/markup/syntax/highlighter/PhutilDivinerSyntaxHighlighter.php b/src/markup/syntax/highlighter/PhutilDivinerSyntaxHighlighter.php
--- a/src/markup/syntax/highlighter/PhutilDivinerSyntaxHighlighter.php
+++ b/src/markup/syntax/highlighter/PhutilDivinerSyntaxHighlighter.php
@@ -3,8 +3,6 @@
/**
* Simple syntax highlighter for the ".diviner" format, which is just Remarkup
* with a specific ruleset. This should also work alright for Remarkup.
- *
- * @group markup
*/
final class PhutilDivinerSyntaxHighlighter {
@@ -17,7 +15,6 @@
}
public function getHighlightFuture($source) {
-
$source = phutil_escape_html($source);
// This highlighter isn't perfect but tries to do an okay job at getting
diff --git a/src/markup/syntax/highlighter/PhutilInvisibleSyntaxHighlighter.php b/src/markup/syntax/highlighter/PhutilInvisibleSyntaxHighlighter.php
--- a/src/markup/syntax/highlighter/PhutilInvisibleSyntaxHighlighter.php
+++ b/src/markup/syntax/highlighter/PhutilInvisibleSyntaxHighlighter.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilInvisibleSyntaxHighlighter {
private $config = array();
@@ -42,4 +39,5 @@
private function decimalToHtmlEntityDecoded($dec) {
return html_entity_decode("&#{$dec};");
}
+
}
diff --git a/src/markup/syntax/highlighter/PhutilLexerSyntaxHighlighter.php b/src/markup/syntax/highlighter/PhutilLexerSyntaxHighlighter.php
--- a/src/markup/syntax/highlighter/PhutilLexerSyntaxHighlighter.php
+++ b/src/markup/syntax/highlighter/PhutilLexerSyntaxHighlighter.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilLexerSyntaxHighlighter extends PhutilSyntaxHighlighter {
private $config = array();
diff --git a/src/markup/syntax/highlighter/PhutilPygmentsSyntaxHighlighter.php b/src/markup/syntax/highlighter/PhutilPygmentsSyntaxHighlighter.php
--- a/src/markup/syntax/highlighter/PhutilPygmentsSyntaxHighlighter.php
+++ b/src/markup/syntax/highlighter/PhutilPygmentsSyntaxHighlighter.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilPygmentsSyntaxHighlighter {
private $config = array();
diff --git a/src/markup/syntax/highlighter/PhutilRainbowSyntaxHighlighter.php b/src/markup/syntax/highlighter/PhutilRainbowSyntaxHighlighter.php
--- a/src/markup/syntax/highlighter/PhutilRainbowSyntaxHighlighter.php
+++ b/src/markup/syntax/highlighter/PhutilRainbowSyntaxHighlighter.php
@@ -3,8 +3,6 @@
/**
* Highlights source code with a rainbow of colors, regardless of the language.
* This highlighter is useless, absurd, and extremely slow.
- *
- * @group markup
*/
final class PhutilRainbowSyntaxHighlighter {
@@ -44,4 +42,5 @@
$result = phutil_implode_html('', $result);
return new ImmediateFuture($result);
}
+
}
diff --git a/src/markup/syntax/highlighter/PhutilSyntaxHighlighter.php b/src/markup/syntax/highlighter/PhutilSyntaxHighlighter.php
--- a/src/markup/syntax/highlighter/PhutilSyntaxHighlighter.php
+++ b/src/markup/syntax/highlighter/PhutilSyntaxHighlighter.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
abstract class PhutilSyntaxHighlighter {
abstract public function setConfig($key, $value);
abstract public function getHighlightFuture($source);
diff --git a/src/markup/syntax/highlighter/PhutilSyntaxHighlighterException.php b/src/markup/syntax/highlighter/PhutilSyntaxHighlighterException.php
--- a/src/markup/syntax/highlighter/PhutilSyntaxHighlighterException.php
+++ b/src/markup/syntax/highlighter/PhutilSyntaxHighlighterException.php
@@ -1,7 +1,3 @@
<?php
-/**
- * @group markup
- */
-final class PhutilSyntaxHighlighterException extends Exception {
-}
+final class PhutilSyntaxHighlighterException extends Exception {}
diff --git a/src/markup/syntax/highlighter/PhutilXHPASTSyntaxHighlighter.php b/src/markup/syntax/highlighter/PhutilXHPASTSyntaxHighlighter.php
--- a/src/markup/syntax/highlighter/PhutilXHPASTSyntaxHighlighter.php
+++ b/src/markup/syntax/highlighter/PhutilXHPASTSyntaxHighlighter.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilXHPASTSyntaxHighlighter {
public function getHighlightFuture($source) {
diff --git a/src/markup/syntax/highlighter/__tests__/PhutilPHPFragmentLexerHighlighterTestCase.php b/src/markup/syntax/highlighter/__tests__/PhutilPHPFragmentLexerHighlighterTestCase.php
--- a/src/markup/syntax/highlighter/__tests__/PhutilPHPFragmentLexerHighlighterTestCase.php
+++ b/src/markup/syntax/highlighter/__tests__/PhutilPHPFragmentLexerHighlighterTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class PhutilPHPFragmentLexerHighlighterTestCase extends PhutilTestCase {
public function testLexer() {
diff --git a/src/markup/syntax/highlighter/__tests__/PhutilXHPASTSyntaxHighlighterTestCase.php b/src/markup/syntax/highlighter/__tests__/PhutilXHPASTSyntaxHighlighterTestCase.php
--- a/src/markup/syntax/highlighter/__tests__/PhutilXHPASTSyntaxHighlighterTestCase.php
+++ b/src/markup/syntax/highlighter/__tests__/PhutilXHPASTSyntaxHighlighterTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class PhutilXHPASTSyntaxHighlighterTestCase extends PhutilTestCase {
private function highlight($source) {
diff --git a/src/markup/syntax/highlighter/pygments/PhutilDefaultSyntaxHighlighterEnginePygmentsFuture.php b/src/markup/syntax/highlighter/pygments/PhutilDefaultSyntaxHighlighterEnginePygmentsFuture.php
--- a/src/markup/syntax/highlighter/pygments/PhutilDefaultSyntaxHighlighterEnginePygmentsFuture.php
+++ b/src/markup/syntax/highlighter/pygments/PhutilDefaultSyntaxHighlighterEnginePygmentsFuture.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilDefaultSyntaxHighlighterEnginePygmentsFuture
extends FutureProxy {
diff --git a/src/markup/syntax/highlighter/xhpast/PhutilXHPASTSyntaxHighlighterFuture.php b/src/markup/syntax/highlighter/xhpast/PhutilXHPASTSyntaxHighlighterFuture.php
--- a/src/markup/syntax/highlighter/xhpast/PhutilXHPASTSyntaxHighlighterFuture.php
+++ b/src/markup/syntax/highlighter/xhpast/PhutilXHPASTSyntaxHighlighterFuture.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group markup
- */
final class PhutilXHPASTSyntaxHighlighterFuture extends FutureProxy {
private $source;
diff --git a/src/moduleutils/PhutilBootloader.php b/src/moduleutils/PhutilBootloader.php
--- a/src/moduleutils/PhutilBootloader.php
+++ b/src/moduleutils/PhutilBootloader.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group library
- */
final class PhutilBootloader {
private static $instance;
diff --git a/src/moduleutils/PhutilBootloaderException.php b/src/moduleutils/PhutilBootloaderException.php
--- a/src/moduleutils/PhutilBootloaderException.php
+++ b/src/moduleutils/PhutilBootloaderException.php
@@ -1,6 +1,3 @@
<?php
-/**
- * @group library
- */
final class PhutilBootloaderException extends Exception {}
diff --git a/src/moduleutils/PhutilLibraryConflictException.php b/src/moduleutils/PhutilLibraryConflictException.php
--- a/src/moduleutils/PhutilLibraryConflictException.php
+++ b/src/moduleutils/PhutilLibraryConflictException.php
@@ -20,7 +20,6 @@
*
* @task info Getting Exception Information
* @task construct Creating Library Conflict Exceptions
- * @group library
*/
final class PhutilLibraryConflictException extends Exception {
@@ -82,4 +81,5 @@
public function getNewPath() {
return $this->newPath;
}
+
}
diff --git a/src/moduleutils/core.php b/src/moduleutils/core.php
--- a/src/moduleutils/core.php
+++ b/src/moduleutils/core.php
@@ -1,22 +1,13 @@
<?php
-/**
- * @group library
- */
function phutil_register_library($library, $path) {
PhutilBootloader::getInstance()->registerLibrary($library, $path);
}
-/**
- * @group library
- */
function phutil_register_library_map(array $map) {
PhutilBootloader::getInstance()->registerLibraryMap($map);
}
-/**
- * @group library
- */
function phutil_load_library($path) {
PhutilBootloader::getInstance()->loadLibrary($path);
}
diff --git a/src/parser/PhutilDocblockParser.php b/src/parser/PhutilDocblockParser.php
--- a/src/parser/PhutilDocblockParser.php
+++ b/src/parser/PhutilDocblockParser.php
@@ -3,8 +3,6 @@
/**
* Parse a docblock comment from source code into raw text documentation and
* metadata (like "@author" and "@return").
- *
- * @group parser
*/
final class PhutilDocblockParser {
@@ -43,7 +41,6 @@
}
public function parse($docblock) {
-
// Strip off comments.
$docblock = trim($docblock);
$docblock = preg_replace('@^/\*\*@', '', $docblock);
@@ -142,4 +139,5 @@
return array($docblock, $special);
}
+
}
diff --git a/src/parser/__tests__/PhutilDocblockParserTestCase.php b/src/parser/__tests__/PhutilDocblockParserTestCase.php
--- a/src/parser/__tests__/PhutilDocblockParserTestCase.php
+++ b/src/parser/__tests__/PhutilDocblockParserTestCase.php
@@ -2,8 +2,6 @@
/**
* Test cases for @{class:PhutilDocblockParser}.
- *
- * @group testcase
*/
final class PhutilDocblockParserTestCase extends PhutilTestCase {
@@ -116,4 +114,5 @@
throw new Exception("No test case to handle file '{$file}'!");
}
}
+
}
diff --git a/src/parser/__tests__/PhutilEmailAddressTestCase.php b/src/parser/__tests__/PhutilEmailAddressTestCase.php
--- a/src/parser/__tests__/PhutilEmailAddressTestCase.php
+++ b/src/parser/__tests__/PhutilEmailAddressTestCase.php
@@ -2,8 +2,6 @@
/**
* Test cases for @{class:PhutilEmailAddress} parser.
- *
- * @group testcase
*/
final class PhutilEmailAddressTestCase extends PhutilTestCase {
@@ -91,7 +89,6 @@
$this->assertEqual(
'alincoln at logcabin dot com',
$email->getAddress());
-
}
}
diff --git a/src/parser/__tests__/PhutilJSONTestCase.php b/src/parser/__tests__/PhutilJSONTestCase.php
--- a/src/parser/__tests__/PhutilJSONTestCase.php
+++ b/src/parser/__tests__/PhutilJSONTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class PhutilJSONTestCase extends PhutilTestCase {
public function testEmptyArrayEncoding() {
diff --git a/src/parser/__tests__/PhutilLanguageGuesserTestCase.php b/src/parser/__tests__/PhutilLanguageGuesserTestCase.php
--- a/src/parser/__tests__/PhutilLanguageGuesserTestCase.php
+++ b/src/parser/__tests__/PhutilLanguageGuesserTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class PhutilLanguageGuesserTestCase extends PhutilTestCase {
public function testGuessing() {
diff --git a/src/parser/__tests__/PhutilQueryStringParserTestCase.php b/src/parser/__tests__/PhutilQueryStringParserTestCase.php
--- a/src/parser/__tests__/PhutilQueryStringParserTestCase.php
+++ b/src/parser/__tests__/PhutilQueryStringParserTestCase.php
@@ -2,8 +2,6 @@
/**
* Test cases for @{class:PhutilQueryStringParser} parser.
- *
- * @group testcase
*/
final class PhutilQueryStringParserTestCase extends PhutilTestCase {
@@ -139,5 +137,4 @@
}
}
-
}
diff --git a/src/parser/__tests__/PhutilSimpleOptionsTestCase.php b/src/parser/__tests__/PhutilSimpleOptionsTestCase.php
--- a/src/parser/__tests__/PhutilSimpleOptionsTestCase.php
+++ b/src/parser/__tests__/PhutilSimpleOptionsTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class PhutilSimpleOptionsTestCase extends PhutilTestCase {
public function testSimpleOptionsParse() {
diff --git a/src/parser/__tests__/PhutilURITestCase.php b/src/parser/__tests__/PhutilURITestCase.php
--- a/src/parser/__tests__/PhutilURITestCase.php
+++ b/src/parser/__tests__/PhutilURITestCase.php
@@ -2,8 +2,6 @@
/**
* Test cases for @{class:PhutilURI} parser.
- *
- * @group testcase
*/
final class PhutilURITestCase extends PhutilTestCase {
diff --git a/src/parser/aast/api/AASTNode.php b/src/parser/aast/api/AASTNode.php
--- a/src/parser/aast/api/AASTNode.php
+++ b/src/parser/aast/api/AASTNode.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group aast
- */
abstract class AASTNode {
protected $id;
@@ -87,14 +84,14 @@
}
/**
- * Build a cache to improve the performance of selectDescendantsOfType(). This
- * cache makes a time/memory tradeoff by aggressively caching node
- * descendants. It may improve the tree's query performance substantially if
- * you make a large number of queries, but also requires a significant amount
- * of memory.
+ * Build a cache to improve the performance of
+ * @{method:selectDescendantsOfType}. This cache makes a time/memory tradeoff
+ * by aggressively caching node descendants. It may improve the tree's query
+ * performance substantially if you make a large number of queries, but also
+ * requires a significant amount of memory.
*
* This builds a cache for the entire tree and improves performance of all
- * selectDescendantsOfType() calls.
+ * @{method:selectDescendantsOfType} calls.
*/
public function buildSelectCache() {
$cache = array();
@@ -116,10 +113,11 @@
}
/**
- * Build a cache to improve the performance of selectTokensOfType(). This
- * cache makes a time/memory tradeoff by aggressively caching token types.
- * It may improve the tree's query performance substantially if you make a
- * large enumber of queries, but also requires a signficant amount of memory.
+ * Build a cache to improve the performance of @{method:selectTokensOfType}.
+ * This cache makes a time/memory tradeoff by aggressively caching token
+ * types. It may improve the tree's query performance substantially if you
+ * make a large number of queries, but also requires a signficant amount of
+ * memory.
*
* This builds a cache for this node only.
*/
diff --git a/src/parser/aast/api/AASTNodeList.php b/src/parser/aast/api/AASTNodeList.php
--- a/src/parser/aast/api/AASTNodeList.php
+++ b/src/parser/aast/api/AASTNodeList.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group aast
- */
final class AASTNodeList implements Iterator, Countable {
protected $list;
diff --git a/src/parser/aast/api/AASTToken.php b/src/parser/aast/api/AASTToken.php
--- a/src/parser/aast/api/AASTToken.php
+++ b/src/parser/aast/api/AASTToken.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group xhpast
- */
abstract class AASTToken {
protected $id;
@@ -81,5 +78,4 @@
return $result;
}
-
}
diff --git a/src/parser/aast/api/AASTTree.php b/src/parser/aast/api/AASTTree.php
--- a/src/parser/aast/api/AASTTree.php
+++ b/src/parser/aast/api/AASTTree.php
@@ -1,9 +1,7 @@
<?php
/**
- * An abstract abstract syntax tree. YESSSSSSS.
- *
- * @group aast
+ * An abstract abstract syntax tree.
*/
abstract class AASTTree {
diff --git a/src/parser/argument/PhutilArgumentParser.php b/src/parser/argument/PhutilArgumentParser.php
--- a/src/parser/argument/PhutilArgumentParser.php
+++ b/src/parser/argument/PhutilArgumentParser.php
@@ -65,8 +65,6 @@
* @task read Reading Arguments
* @task help Command Help
* @task internal Internals
- *
- * @group console
*/
final class PhutilArgumentParser {
diff --git a/src/parser/argument/PhutilArgumentSpecification.php b/src/parser/argument/PhutilArgumentSpecification.php
--- a/src/parser/argument/PhutilArgumentSpecification.php
+++ b/src/parser/argument/PhutilArgumentSpecification.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group console
- */
final class PhutilArgumentSpecification {
private $name;
diff --git a/src/parser/argument/__tests__/PhutilArgumentParserTestCase.php b/src/parser/argument/__tests__/PhutilArgumentParserTestCase.php
--- a/src/parser/argument/__tests__/PhutilArgumentParserTestCase.php
+++ b/src/parser/argument/__tests__/PhutilArgumentParserTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class PhutilArgumentParserTestCase extends PhutilTestCase {
public function testBasics() {
diff --git a/src/parser/argument/__tests__/PhutilArgumentSpecificationTestCase.php b/src/parser/argument/__tests__/PhutilArgumentSpecificationTestCase.php
--- a/src/parser/argument/__tests__/PhutilArgumentSpecificationTestCase.php
+++ b/src/parser/argument/__tests__/PhutilArgumentSpecificationTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class PhutilArgumentSpecificationTestCase extends PhutilTestCase {
public function testNames() {
diff --git a/src/parser/argument/exception/PhutilArgumentParserException.php b/src/parser/argument/exception/PhutilArgumentParserException.php
--- a/src/parser/argument/exception/PhutilArgumentParserException.php
+++ b/src/parser/argument/exception/PhutilArgumentParserException.php
@@ -1,8 +1,3 @@
<?php
-/**
- * @group console
- */
-abstract class PhutilArgumentParserException extends Exception {
-
-}
+abstract class PhutilArgumentParserException extends Exception {}
diff --git a/src/parser/argument/exception/PhutilArgumentSpecificationException.php b/src/parser/argument/exception/PhutilArgumentSpecificationException.php
--- a/src/parser/argument/exception/PhutilArgumentSpecificationException.php
+++ b/src/parser/argument/exception/PhutilArgumentSpecificationException.php
@@ -1,9 +1,4 @@
<?php
-/**
- * @group console
- */
final class PhutilArgumentSpecificationException
- extends PhutilArgumentParserException {
-
-}
+ extends PhutilArgumentParserException {}
diff --git a/src/parser/argument/exception/PhutilArgumentUsageException.php b/src/parser/argument/exception/PhutilArgumentUsageException.php
--- a/src/parser/argument/exception/PhutilArgumentUsageException.php
+++ b/src/parser/argument/exception/PhutilArgumentUsageException.php
@@ -1,9 +1,4 @@
<?php
-/**
- * @group console
- */
final class PhutilArgumentUsageException
- extends PhutilArgumentParserException {
-
-}
+ extends PhutilArgumentParserException {}
diff --git a/src/parser/argument/workflow/PhutilArgumentWorkflow.php b/src/parser/argument/workflow/PhutilArgumentWorkflow.php
--- a/src/parser/argument/workflow/PhutilArgumentWorkflow.php
+++ b/src/parser/argument/workflow/PhutilArgumentWorkflow.php
@@ -73,7 +73,6 @@
*
* @stable
* @concrete-extensible
- * @group console
*/
class PhutilArgumentWorkflow {
diff --git a/src/parser/argument/workflow/PhutilHelpArgumentWorkflow.php b/src/parser/argument/workflow/PhutilHelpArgumentWorkflow.php
--- a/src/parser/argument/workflow/PhutilHelpArgumentWorkflow.php
+++ b/src/parser/argument/workflow/PhutilHelpArgumentWorkflow.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group console
- */
final class PhutilHelpArgumentWorkflow extends PhutilArgumentWorkflow {
protected function didConstruct() {
diff --git a/src/parser/xhpast/api/XHPASTNode.php b/src/parser/xhpast/api/XHPASTNode.php
--- a/src/parser/xhpast/api/XHPASTNode.php
+++ b/src/parser/xhpast/api/XHPASTNode.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group xhpast
- */
final class XHPASTNode extends AASTNode {
public function isStaticScalar() {
diff --git a/src/parser/xhpast/api/XHPASTSyntaxErrorException.php b/src/parser/xhpast/api/XHPASTSyntaxErrorException.php
--- a/src/parser/xhpast/api/XHPASTSyntaxErrorException.php
+++ b/src/parser/xhpast/api/XHPASTSyntaxErrorException.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group xhpast
- */
final class XHPASTSyntaxErrorException extends Exception {
protected $errorLine;
diff --git a/src/parser/xhpast/api/XHPASTToken.php b/src/parser/xhpast/api/XHPASTToken.php
--- a/src/parser/xhpast/api/XHPASTToken.php
+++ b/src/parser/xhpast/api/XHPASTToken.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group xhpast
- */
final class XHPASTToken extends AASTToken {
public function getTypeName() {
diff --git a/src/parser/xhpast/api/XHPASTTree.php b/src/parser/xhpast/api/XHPASTTree.php
--- a/src/parser/xhpast/api/XHPASTTree.php
+++ b/src/parser/xhpast/api/XHPASTTree.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group xhpast
- */
final class XHPASTTree extends AASTTree {
public function __construct(array $tree, array $stream, $source) {
diff --git a/src/parser/xhpast/api/__tests__/XHPASTTreeTestCase.php b/src/parser/xhpast/api/__tests__/XHPASTTreeTestCase.php
--- a/src/parser/xhpast/api/__tests__/XHPASTTreeTestCase.php
+++ b/src/parser/xhpast/api/__tests__/XHPASTTreeTestCase.php
@@ -2,7 +2,6 @@
/**
* @nolint We test crazy stuff here.
- * @group xhpast
*/
final class XHPASTTreeTestCase extends PhutilTestCase {
@@ -128,7 +127,6 @@
$this->assertEval(
"\xg",
'"\xg"');
-
}
private function assertEval($value, $string) {
@@ -139,5 +137,3 @@
}
}
-
-
diff --git a/src/readableserializer/PhutilReadableSerializer.php b/src/readableserializer/PhutilReadableSerializer.php
--- a/src/readableserializer/PhutilReadableSerializer.php
+++ b/src/readableserializer/PhutilReadableSerializer.php
@@ -6,7 +6,6 @@
*
* @task print Printing PHP Values
* @task internal Internals
- * @group error
*/
final class PhutilReadableSerializer {
@@ -83,9 +82,9 @@
/**
* Dump some debug output about an object's members without the
- * potential recursive explosion of verbosity that comes with ##print_r()##.
+ * potential recursive explosion of verbosity that comes with `print_r()`.
*
- * To print any number of member variables, pass null for $max_members.
+ * To print any number of member variables, pass null for `$max_members`.
*
* @param wild Any value.
* @param int Maximum depth to print for nested arrays and objects.
@@ -168,7 +167,8 @@
/**
- * Adds indentation to the beginning of every line starting from $first_line.
+ * Adds indentation to the beginning of every line starting from
+ * `$first_line`.
*
* @param string Printed value.
* @param string String to indent with.
@@ -185,4 +185,5 @@
return implode("\n", $out);
}
+
}
diff --git a/src/symbols/PhutilSymbolLoader.php b/src/symbols/PhutilSymbolLoader.php
--- a/src/symbols/PhutilSymbolLoader.php
+++ b/src/symbols/PhutilSymbolLoader.php
@@ -31,8 +31,6 @@
* @task config Configuring the Query
* @task load Loading Symbols
* @task internal Internals
- *
- * @group library
*/
final class PhutilSymbolLoader {
@@ -275,7 +273,7 @@
* Execute the query and select matching symbols, but do not load them. This
* will perform slightly better if you are only interested in the existence
* of the symbols and don't plan to use them; otherwise, use
- * ##selectAndLoadSymbols()##.
+ * @{method:selectAndLoadSymbols}.
*
* @return dict A dictionary of matching symbols. See top-level class
* documentation for details.
@@ -347,7 +345,6 @@
* @task internal
*/
private function loadSymbol(array $symbol_spec) {
-
// Check if we've already loaded the symbol; bail if we have.
$name = $symbol_spec['name'];
$is_function = ($symbol_spec['type'] == 'function');
diff --git a/src/symbols/exception/PhutilMissingSymbolException.php b/src/symbols/exception/PhutilMissingSymbolException.php
--- a/src/symbols/exception/PhutilMissingSymbolException.php
+++ b/src/symbols/exception/PhutilMissingSymbolException.php
@@ -1,9 +1,7 @@
<?php
-/**
- * @group library
- */
final class PhutilMissingSymbolException extends Exception {
+
public function __construct($symbol, $type, $reason) {
parent::__construct(
"Failed to load {$type} '{$symbol}': $reason ".
@@ -13,4 +11,5 @@
"http://www.phabricator.com/docs/phabricator/article/".
"libphutil_Libraries_User_Guide.html");
}
+
}
diff --git a/src/utils/PhutilUTF8StringTruncator.php b/src/utils/PhutilUTF8StringTruncator.php
--- a/src/utils/PhutilUTF8StringTruncator.php
+++ b/src/utils/PhutilUTF8StringTruncator.php
@@ -28,8 +28,6 @@
*
* NOTE: This function makes a best effort to apply some reasonable rules but
* will not work well for the full range of unicode languages.
- *
- * @group utf8
*/
final class PhutilUTF8StringTruncator extends Phobject {
diff --git a/src/utils/__tests__/AbstractDirectedGraphTestCase.php b/src/utils/__tests__/AbstractDirectedGraphTestCase.php
--- a/src/utils/__tests__/AbstractDirectedGraphTestCase.php
+++ b/src/utils/__tests__/AbstractDirectedGraphTestCase.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class AbstractDirectedGraphTestCase extends PhutilTestCase {
public function testTrivialGraph() {
@@ -127,4 +124,5 @@
$detector->loadGraph();
return $detector->getTopographicallySortedNodes();
}
+
}
diff --git a/src/utils/__tests__/MFilterTestHelper.php b/src/utils/__tests__/MFilterTestHelper.php
--- a/src/utils/__tests__/MFilterTestHelper.php
+++ b/src/utils/__tests__/MFilterTestHelper.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class MFilterTestHelper {
private $h;
diff --git a/src/utils/__tests__/PhutilArrayTestCase.php b/src/utils/__tests__/PhutilArrayTestCase.php
--- a/src/utils/__tests__/PhutilArrayTestCase.php
+++ b/src/utils/__tests__/PhutilArrayTestCase.php
@@ -2,8 +2,6 @@
/**
* Test cases for @{class:PhutilArray} subclasses.
- *
- * @group testcase
*/
final class PhutilArrayTestCase extends PhutilTestCase {
diff --git a/src/utils/__tests__/PhutilBufferedIteratorTestCase.php b/src/utils/__tests__/PhutilBufferedIteratorTestCase.php
--- a/src/utils/__tests__/PhutilBufferedIteratorTestCase.php
+++ b/src/utils/__tests__/PhutilBufferedIteratorTestCase.php
@@ -1,9 +1,7 @@
<?php
/**
- * Test cases for functions in utils.php.
- *
- * @group testcase
+ * Test cases for @{class:PhutilBufferedIteratorExample}.
*/
final class PhutilBufferedIteratorTestCase extends PhutilTestCase {
diff --git a/src/utils/__tests__/PhutilChunkedIteratorTestCase.php b/src/utils/__tests__/PhutilChunkedIteratorTestCase.php
--- a/src/utils/__tests__/PhutilChunkedIteratorTestCase.php
+++ b/src/utils/__tests__/PhutilChunkedIteratorTestCase.php
@@ -1,9 +1,7 @@
<?php
/**
- * Test cases for functions in utils.php.
- *
- * @group testcase
+ * Test cases for @{class:PhutilChunkedIterator}.
*/
final class PhutilChunkedIteratorTestCase extends PhutilTestCase {
@@ -26,7 +24,6 @@
$this->assertEqual(idx($expect, $key), $actual);
}
}
-
}
}
diff --git a/src/utils/__tests__/PhutilUTF8TestCase.php b/src/utils/__tests__/PhutilUTF8TestCase.php
--- a/src/utils/__tests__/PhutilUTF8TestCase.php
+++ b/src/utils/__tests__/PhutilUTF8TestCase.php
@@ -2,8 +2,6 @@
/**
* Test cases for functions in utf8.php.
- *
- * @group testcase
*/
final class PhutilUTF8TestCase extends PhutilTestCase {
@@ -170,7 +168,6 @@
->truncateString($string);
$this->assertEqual($expect, $result, 'Shortening of '.$string);
}
-
}
public function testUTF8StringTruncator() {
@@ -337,7 +334,6 @@
}
}
-
public function testUTF8ConvertParams() {
$caught = null;
try {
@@ -369,7 +365,6 @@
$this->assertEqual($expect, $output, 'Conversion from ISO-8859-1.');
-
$caught = null;
try {
phutil_utf8_convert('xyz', 'moon language', 'UTF-8');
@@ -398,7 +393,6 @@
}
}
-
public function testUTF8strtolower() {
$tests = array(
'' => '',
@@ -495,7 +489,6 @@
$this->assertEqual(
array(" \xCD\xA0\xCD\xA0", 'c'),
phutil_utf8v_combined($string));
-
}
public function testUTF8BMPSegfaults() {
diff --git a/src/utils/__tests__/PhutilUtilsTestCase.php b/src/utils/__tests__/PhutilUtilsTestCase.php
--- a/src/utils/__tests__/PhutilUtilsTestCase.php
+++ b/src/utils/__tests__/PhutilUtilsTestCase.php
@@ -2,8 +2,6 @@
/**
* Test cases for functions in utils.php.
- *
- * @group testcase
*/
final class PhutilUtilsTestCase extends PhutilTestCase {
@@ -39,7 +37,6 @@
$this->assertEqual($expected, $actual);
}
-
public function testMFilterWithEmptyValueNegateFiltered() {
$a = new MFilterTestHelper('o', 'p', 'q');
$b = new MFilterTestHelper('o', '', 'q');
@@ -59,7 +56,6 @@
$this->assertEqual($expected, $actual);
}
-
public function testIFilterInvalidIndexThrowException() {
$caught = null;
try {
@@ -71,31 +67,29 @@
$this->assertTrue($caught instanceof InvalidArgumentException);
}
-
public function testIFilterWithEmptyValueFiltered() {
$list = array(
- 'a' => array('h' => 'o', 'i' => 'p', 'j' => 'q',),
- 'b' => array('h' => 'o', 'i' => '', 'j' => 'q',),
- 'c' => array('h' => 'o', 'i' => 'p', 'j' => 'q',),
- 'd' => array('h' => 'o', 'i' => 0, 'j' => 'q',),
- 'e' => array('h' => 'o', 'i' => null, 'j' => 'q',),
- 'f' => array('h' => 'o', 'i' => false, 'j' => 'q',),
+ 'a' => array('h' => 'o', 'i' => 'p', 'j' => 'q'),
+ 'b' => array('h' => 'o', 'i' => '', 'j' => 'q'),
+ 'c' => array('h' => 'o', 'i' => 'p', 'j' => 'q'),
+ 'd' => array('h' => 'o', 'i' => 0, 'j' => 'q'),
+ 'e' => array('h' => 'o', 'i' => null, 'j' => 'q'),
+ 'f' => array('h' => 'o', 'i' => false, 'j' => 'q'),
);
$actual = ifilter($list, 'i');
$expected = array(
- 'a' => array('h' => 'o', 'i' => 'p', 'j' => 'q',),
- 'c' => array('h' => 'o', 'i' => 'p', 'j' => 'q',),
+ 'a' => array('h' => 'o', 'i' => 'p', 'j' => 'q'),
+ 'c' => array('h' => 'o', 'i' => 'p', 'j' => 'q'),
);
$this->assertEqual($expected, $actual);
}
-
public function testIFilterIndexNotExistsAllFiltered() {
$list = array(
- 'a' => array('h' => 'o', 'i' => 'p', 'j' => 'q',),
- 'b' => array('h' => 'o', 'i' => '', 'j' => 'q',),
+ 'a' => array('h' => 'o', 'i' => 'p', 'j' => 'q'),
+ 'b' => array('h' => 'o', 'i' => '', 'j' => 'q'),
);
$actual = ifilter($list, 'NoneExisting');
@@ -107,36 +101,35 @@
public function testIFilterWithEmptyValueNegateFiltered() {
$list = array(
- 'a' => array('h' => 'o', 'i' => 'p', 'j' => 'q',),
- 'b' => array('h' => 'o', 'i' => '', 'j' => 'q',),
- 'c' => array('h' => 'o', 'i' => 'p', 'j' => 'q',),
- 'd' => array('h' => 'o', 'i' => 0, 'j' => 'q',),
- 'e' => array('h' => 'o', 'i' => null, 'j' => 'q',),
- 'f' => array('h' => 'o', 'i' => false, 'j' => 'q',),
+ 'a' => array('h' => 'o', 'i' => 'p', 'j' => 'q'),
+ 'b' => array('h' => 'o', 'i' => '', 'j' => 'q'),
+ 'c' => array('h' => 'o', 'i' => 'p', 'j' => 'q'),
+ 'd' => array('h' => 'o', 'i' => 0, 'j' => 'q'),
+ 'e' => array('h' => 'o', 'i' => null, 'j' => 'q'),
+ 'f' => array('h' => 'o', 'i' => false, 'j' => 'q'),
);
$actual = ifilter($list, 'i', true);
$expected = array(
- 'b' => array('h' => 'o', 'i' => '', 'j' => 'q',),
- 'd' => array('h' => 'o', 'i' => 0, 'j' => 'q',),
- 'e' => array('h' => 'o', 'i' => null, 'j' => 'q',),
- 'f' => array('h' => 'o', 'i' => false, 'j' => 'q',),
+ 'b' => array('h' => 'o', 'i' => '', 'j' => 'q'),
+ 'd' => array('h' => 'o', 'i' => 0, 'j' => 'q'),
+ 'e' => array('h' => 'o', 'i' => null, 'j' => 'q'),
+ 'f' => array('h' => 'o', 'i' => false, 'j' => 'q'),
);
$this->assertEqual($expected, $actual);
}
-
public function testIFilterIndexNotExistsNotFiltered() {
$list = array(
- 'a' => array('h' => 'o', 'i' => 'p', 'j' => 'q',),
- 'b' => array('h' => 'o', 'i' => '', 'j' => 'q',),
+ 'a' => array('h' => 'o', 'i' => 'p', 'j' => 'q'),
+ 'b' => array('h' => 'o', 'i' => '', 'j' => 'q'),
);
$actual = ifilter($list, 'NoneExisting', true);
$expected = array(
- 'a' => array('h' => 'o', 'i' => 'p', 'j' => 'q',),
- 'b' => array('h' => 'o', 'i' => '', 'j' => 'q',),
+ 'a' => array('h' => 'o', 'i' => 'p', 'j' => 'q'),
+ 'b' => array('h' => 'o', 'i' => '', 'j' => 'q'),
);
$this->assertEqual($expected, $actual);
@@ -279,9 +272,9 @@
$this->assertTrue($caught instanceof InvalidArgumentException);
$array = array(
- 'foo' => 'bar',
- 'bar' => 'foo',
- );
+ 'foo' => 'bar',
+ 'bar' => 'foo',
+ );
try {
assert_stringlike($array);
@@ -303,7 +296,6 @@
fclose($resource);
$this->assertTrue($caught instanceof InvalidArgumentException);
-
}
public function testCoalesce() {
@@ -400,7 +392,6 @@
phutil_split_lines($input, $retain_endings = false),
"(Discarded) ".addcslashes($input, "\r\n\\"));
}
-
}
public function testArrayFuse() {
@@ -574,5 +565,4 @@
}
}
-
}
diff --git a/src/utils/__tests__/TestAbstractDirectedGraph.php b/src/utils/__tests__/TestAbstractDirectedGraph.php
--- a/src/utils/__tests__/TestAbstractDirectedGraph.php
+++ b/src/utils/__tests__/TestAbstractDirectedGraph.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group testcase
- */
final class TestAbstractDirectedGraph extends AbstractDirectedGraph {
private $nodes;
diff --git a/src/utils/utf8.php b/src/utils/utf8.php
--- a/src/utils/utf8.php
+++ b/src/utils/utf8.php
@@ -9,7 +9,6 @@
* @param string String to convert to valid UTF-8.
* @return string String with invalid UTF-8 byte subsequences replaced with
* U+FFFD.
- * @group utf8
*/
function phutil_utf8ize($string) {
if (phutil_is_utf8($string)) {
@@ -70,7 +69,6 @@
*
* @param string Some string which may or may not be valid UTF-8.
* @return bool True if the string is valid UTF-8.
- * @group utf8
*/
function phutil_is_utf8($string) {
if (function_exists('mb_check_encoding')) {
@@ -233,7 +231,6 @@
*
* @param string A valid utf-8 string.
* @return int The character length of the string.
- * @group utf8
*/
function phutil_utf8_strlen($string) {
return strlen(utf8_decode($string));
@@ -257,10 +254,8 @@
*
* @param string A valid UTF-8 string.
* @return int The console display length of the string.
- * @group utf8
*/
function phutil_utf8_console_strlen($string) {
-
// Formatting and colors don't contribute any width in the console.
$string = preg_replace("/\x1B\[\d*m/", '', $string);
@@ -312,7 +307,6 @@
*
* @param string A valid utf-8 string.
* @return list A list of characters in the string.
- * @group utf8
*/
function phutil_utf8v($string) {
$res = array();
@@ -360,7 +354,6 @@
*
* @param string A valid UTF-8 string.
* @return list A list of codepoints, as integers.
- * @group utf8
*/
function phutil_utf8v_codepoints($string) {
$str_v = phutil_utf8v($string);
@@ -415,8 +408,6 @@
* @param string If the string is shortened, add this at the end. Defaults to
* horizontal ellipsis.
* @return string A string with no more than the specified character length.
- *
- * @group utf8
*/
function phutil_utf8_shorten($string, $length, $terminal = "\xE2\x80\xA6") {
return id(new PhutilUTF8StringTruncator())
@@ -431,7 +422,6 @@
*
* @param string An HTML string with tags and entities.
* @return list List of hard-wrapped lines.
- * @group utf8
*/
function phutil_utf8_hard_wrap_html($string, $width) {
$break_here = array();
@@ -488,7 +478,6 @@
* @param string A non HTML string
* @param int Width of the hard-wrapped lines
* @return list List of hard-wrapped lines.
- * @group utf8
*/
function phutil_utf8_hard_wrap($string, $width) {
$result = array();
@@ -540,8 +529,6 @@
* @param string Source endocing name, like "ISO-8859-1".
* @return string Input string, with converted character encoding.
*
- * @group utf8
- *
* @phutil-external-symbol function mb_convert_encoding
*/
function phutil_utf8_convert($string, $to_encoding, $from_encoding) {
@@ -590,14 +577,12 @@
/**
* Convert a string to title case in a UTF8-aware way. This function doesn't
- * necessarily do a great job, but the builtin implementation of ucwords() can
+ * necessarily do a great job, but the builtin implementation of `ucwords()` can
* completely destroy inputs, so it just has to be better than that. Similar to
* @{function:ucwords}.
*
* @param string UTF-8 input string.
* @return string Input, in some semblance of title case.
- *
- * @group utf8
*/
function phutil_utf8_ucwords($str) {
// NOTE: mb_convert_case() discards uppercase letters in words when converting
@@ -639,8 +624,6 @@
* @param string UTF-8 input string.
* @return string Input, in some semblance of lower case.
*
- * @group utf8
- *
* @phutil-external-symbol function mb_convert_case
*/
function phutil_utf8_strtolower($str) {
@@ -666,8 +649,6 @@
* @param string UTF-8 input string.
* @return string Input, in some semblance of upper case.
*
- * @group utf8
- *
* @phutil-external-symbol function mb_convert_case
*/
function phutil_utf8_strtoupper($str) {
@@ -693,8 +674,6 @@
* @param string UTF-8 input string.
* @param map<string, string> Map of characters to replace.
* @return string Input with translated characters.
- *
- * @group utf8
*/
function phutil_utf8_strtr($str, array $map) {
$v = phutil_utf8v($str);
@@ -715,10 +694,7 @@
*
* @param string A single unicode character.
* @return boolean True or false.
- *
- * @group utf8
*/
-
function phutil_utf8_is_combining_character($character) {
$components = phutil_utf8v_codepoints($character);
@@ -745,10 +721,7 @@
*
* @param string A valid utf-8 string.
* @return list A list of characters in the string.
- *
- * @group utf8
*/
-
function phutil_utf8v_combined($string) {
$components = phutil_utf8v($string);
$array_length = count($components);
diff --git a/src/utils/utils.php b/src/utils/utils.php
--- a/src/utils/utils.php
+++ b/src/utils/utils.php
@@ -30,7 +30,7 @@
* @param scalar Index to access in the array.
* @param wild Default value to return if the key is not present in the
* array.
- * @return wild If $array[$key] exists, that value is returned. If not,
+ * @return wild If `$array[$key]` exists, that value is returned. If not,
* $default is returned without raising a warning.
*/
function idx(array $array, $key, $default = null) {
@@ -100,9 +100,9 @@
* @param string|null Determines how **keys** will be assigned in the result
* array. Use a string like 'getID' to use the result
* of calling the named method as each object's key, or
- * ##null## to preserve the original keys.
+ * `null` to preserve the original keys.
* @return dict A dictionary with keys and values derived according
- * to whatever you passed as $method and $key_method.
+ * to whatever you passed as `$method` and `$key_method`.
*/
function mpull(array $list, $method, $key_method = null) {
$result = array();
@@ -169,13 +169,14 @@
* @param string|null Determines which **values** will appear in the result
* array. Use a string like 'name' to store the value of
* accessing the named property in each value, or
- * ##null## to preserve the original objects.
+ * `null` to preserve the original objects.
* @param string|null Determines how **keys** will be assigned in the result
* array. Use a string like 'id' to use the result of
* accessing the named property as each object's key, or
- * ##null## to preserve the original keys.
+ * `null` to preserve the original keys.
* @return dict A dictionary with keys and values derived according
- * to whatever you passed as $property and $key_property.
+ * to whatever you passed as `$property` and
+ * `$key_property`.
*/
function ppull(array $list, $property, $key_property = null) {
$result = array();
@@ -223,7 +224,7 @@
* array. Use a scalar to select that index from each
* array, or null to preserve the array keys.
* @return dict A dictionary with keys and values derived according
- * to whatever you passed for $index and $key_index.
+ * to whatever you passed for `$index` and `$key_index`.
*/
function ipull(array $list, $index, $key_index = null) {
$result = array();
@@ -341,13 +342,13 @@
/**
* Sort a list of objects by the return value of some method. In PHP, this is
- * often vastly more efficient than ##usort()## and similar.
+ * often vastly more efficient than `usort()` and similar.
*
* // Sort a list of Duck objects by name.
* $sorted = msort($ducks, 'getName');
*
* It is usually significantly more efficient to define an ordering method
- * on objects and call ##msort()## than to write a comparator. It is often more
+ * on objects and call `msort()` than to write a comparator. It is often more
* convenient, as well.
*
* NOTE: This method does not take the list by reference; it returns a new list.
@@ -415,8 +416,7 @@
* @param string A method name.
* @param bool Optionally, pass true to drop objects which pass the
* filter instead of keeping them.
- *
- * @return array List of objects which pass the filter.
+ * @return array List of objects which pass the filter.
*/
function mfilter(array $list, $method, $negate = false) {
if (!is_string($method)) {
@@ -461,8 +461,7 @@
* @param scalar The index.
* @param bool Optionally, pass true to drop arrays which pass the
* filter instead of keeping them.
- *
- * @return array List of arrays which pass the filter.
+ * @return array List of arrays which pass the filter.
*/
function ifilter(array $list, $index, $negate = false) {
if (!is_scalar($index)) {
@@ -515,8 +514,8 @@
/**
- * Checks if all values of array are instances of the passed class.
- * Throws InvalidArgumentException if it isn't true for any value.
+ * Checks if all values of array are instances of the passed class. Throws
+ * `InvalidArgumentException` if it isn't true for any value.
*
* @param array
* @param string Name of the class or 'array' to check arrays.
@@ -581,11 +580,11 @@
}
/**
- * Returns the first argument which is not strictly null, or ##null## if there
+ * Returns the first argument which is not strictly null, or `null` if there
* are no such arguments. Identical to the MySQL function of the same name.
*
* @param ... Zero or more arguments of any type.
- * @return mixed First non-##null## arg, or null if no such arg exists.
+ * @return mixed First non-`null` arg, or null if no such arg exists.
*/
function coalesce(/* ... */) {
$args = func_get_args();
@@ -600,14 +599,14 @@
/**
* Similar to @{function:coalesce}, but less strict: returns the first
- * non-##empty()## argument, instead of the first argument that is strictly
- * non-##null##. If no argument is nonempty, it returns the last argument. This
+ * non-`empty()` argument, instead of the first argument that is strictly
+ * non-`null`. If no argument is nonempty, it returns the last argument. This
* is useful idiomatically for setting defaults:
*
* $display_name = nonempty($user_name, $full_name, "Anonymous");
*
* @param ... Zero or more arguments of any type.
- * @return mixed First non-##empty()## arg, or last arg if no such arg
+ * @return mixed First non-`empty()` arg, or last arg if no such arg
* exists, or null if you passed in zero args.
*/
function nonempty(/* ... */) {
@@ -625,7 +624,7 @@
/**
* Invokes the "new" operator with a vector of arguments. There is no way to
- * call_user_func_array() on a class constructor, so you can instead use this
+ * `call_user_func_array()` on a class constructor, so you can instead use this
* function:
*
* $obj = newv($class_name, $argv);
@@ -640,7 +639,7 @@
*
* - Build a fake serialized object and unserialize it.
* - Invoke the constructor twice.
- * - just use eval() lol
+ * - just use `eval()` lol
*
* These are really bad solutions to the problem because they can have side
* effects (e.g., __wakeup()) and give you an object in an otherwise impossible
@@ -648,8 +647,8 @@
*
* If you own the classes you're doing this for, you should consider whether
* or not restructuring your code (for instance, by creating static
- * construction methods) might make it cleaner before using newv(). Static
- * constructors can be invoked with call_user_func_array(), and may give your
+ * construction methods) might make it cleaner before using `newv()`. Static
+ * constructors can be invoked with `call_user_func_array()`, and may give your
* class a cleaner and more descriptive API.
*
* @param string The name of a class.
@@ -680,7 +679,7 @@
}
/**
- * Returns the last element of an array. This is exactly like end() except
+ * Returns the last element of an array. This is exactly like `end()` except
* that it won't warn you if you pass some non-referencable array to
* it -- e.g., the result of some other array operation.
*
@@ -838,9 +837,6 @@
return $result;
}
-/**
- * @group library
- */
function phutil_is_windows() {
// We can also use PHP_OS, but that's kind of sketchy because it returns
// "WINNT" for Windows 7 and "Darwin" for Mac OS X. Practically, testing for
@@ -848,9 +844,6 @@
return (DIRECTORY_SEPARATOR != '/');
}
-/**
- * @group library
- */
function phutil_is_hiphop_runtime() {
return (array_key_exists('HPHP', $_ENV) && $_ENV['HPHP'] === 1);
}
@@ -860,7 +853,6 @@
* before the request completes abruptly.
*
* @param int|string $status
- * @group library
*/
function phutil_exit($status = 0) {
$event = new PhutilEvent(
@@ -994,7 +986,6 @@
* @return int Quantity of specified unit.
*/
function phutil_units($description) {
-
$matches = null;
if (!preg_match('/^(\d+) (\w+) in (\w+)$/', $description, $matches)) {
throw new InvalidArgumentException(
diff --git a/src/xsprintf/PhutilQsprintfInterface.php b/src/xsprintf/PhutilQsprintfInterface.php
--- a/src/xsprintf/PhutilQsprintfInterface.php
+++ b/src/xsprintf/PhutilQsprintfInterface.php
@@ -1,8 +1,5 @@
<?php
-/**
- * @group storage
- */
interface PhutilQsprintfInterface {
public function escapeBinaryString($string);
public function escapeUTF8String($string);
diff --git a/src/xsprintf/csprintf.php b/src/xsprintf/csprintf.php
--- a/src/xsprintf/csprintf.php
+++ b/src/xsprintf/csprintf.php
@@ -30,9 +30,8 @@
* @param string sprintf()-style format string.
* @param ... Zero or more arguments.
* @return string Formatted string, escaped appropriately for shell contexts.
- * @group exec
*/
-function csprintf($pattern/* , ... */) {
+function csprintf($pattern /* , ... */) {
$args = func_get_args();
return new PhutilCommandString($args);
}
@@ -43,7 +42,6 @@
* @param string sprintf()-style format string.
* @param list List of zero or more arguments to csprintf().
* @return string Formatted string, escaped appropriately for shell contexts.
- * @group exec
*/
function vcsprintf($pattern, array $argv) {
array_unshift($argv, $pattern);
@@ -52,7 +50,6 @@
/**
* @{function:xsprintf} callback for @{function:csprintf}.
- * @group exec
*/
function xsprintf_command($userdata, &$pattern, &$pos, &$value, &$length) {
$type = $pattern[$pos];
diff --git a/src/xsprintf/hgsprintf.php b/src/xsprintf/hgsprintf.php
--- a/src/xsprintf/hgsprintf.php
+++ b/src/xsprintf/hgsprintf.php
@@ -8,8 +8,6 @@
*
* %R Rrraw Rreferrrence / Rrrrevset
* Passes text through unescaped (e.g., an already-escaped revset).
- *
- * @group mercurial
*/
function hgsprintf($pattern /* , ... */) {
$args = func_get_args();
@@ -18,8 +16,6 @@
/**
* @{function:xsprintf} callback for Mercurial encoding.
- *
- * @group mercurial
*/
function xsprintf_mercurial($userdata, &$pattern, &$pos, &$value, &$length) {
$type = $pattern[$pos];
diff --git a/src/xsprintf/jsprintf.php b/src/xsprintf/jsprintf.php
--- a/src/xsprintf/jsprintf.php
+++ b/src/xsprintf/jsprintf.php
@@ -22,17 +22,12 @@
* %J (Javascript)
* Inserts raw, unescaped Javascript. This is DANGEROUS because it WILL
* NOT BE ESCAPED.
- *
- * @group markup
*/
function jsprintf($pattern /* , ... */) {
$args = func_get_args();
return xsprintf('xsprintf_javascript', null, $args);
}
-/**
- * @group markup
- */
function vjsprintf($pattern, array $argv) {
array_unshift($argv, $pattern);
return xsprintf('xsprintf_javascript', null, $argv);
@@ -40,7 +35,6 @@
/**
* @{function:xsprintf} callback for JavaScript encoding.
- * @group markup
*/
function xsprintf_javascript($userdata, &$pattern, &$pos, &$value, &$length) {
$type = $pattern[$pos];
diff --git a/src/xsprintf/ldapsprintf.php b/src/xsprintf/ldapsprintf.php
--- a/src/xsprintf/ldapsprintf.php
+++ b/src/xsprintf/ldapsprintf.php
@@ -19,7 +19,6 @@
/**
* @{function:ldap_sprintf} callback for LDAP encoding.
- * @group markup
*/
function xsprintf_ldap($userdata, &$pattern, &$pos, &$value, &$length) {
$type = $pattern[$pos];
diff --git a/src/xsprintf/qsprintf.php b/src/xsprintf/qsprintf.php
--- a/src/xsprintf/qsprintf.php
+++ b/src/xsprintf/qsprintf.php
@@ -57,18 +57,13 @@
*
* // Find all rows where `name` ends with $suffix.
* qsprintf($escaper, 'WHERE name LIKE %<', $suffix);
- *
- * @group storage
*/
-function qsprintf(PhutilQsprintfInterface $escaper, $pattern/* , ... */) {
+function qsprintf(PhutilQsprintfInterface $escaper, $pattern /* , ... */) {
$args = func_get_args();
array_shift($args);
return xsprintf('xsprintf_query', $escaper, $args);
}
-/**
- * @group storage
- */
function vqsprintf(PhutilQsprintfInterface $escaper, $pattern, array $argv) {
array_unshift($argv, $pattern);
return xsprintf('xsprintf_query', $escaper, $argv);
@@ -77,8 +72,6 @@
/**
* @{function:xsprintf} callback for encoding SQL queries. See
* @{function:qsprintf}.
- *
- * @group storage
*/
function xsprintf_query($userdata, &$pattern, &$pos, &$value, &$length) {
$type = $pattern[$pos];
@@ -244,9 +237,6 @@
$pattern[$pos] = $type;
}
-/**
- * @group storage
- */
function _qsprintf_check_type($value, $type, $query) {
switch ($type) {
case 'Ld':
@@ -274,9 +264,6 @@
}
}
-/**
- * @group storage
- */
function _qsprintf_check_scalar_type($value, $type, $query) {
switch ($type) {
case 'Q':
diff --git a/src/xsprintf/queryfx.php b/src/xsprintf/queryfx.php
--- a/src/xsprintf/queryfx.php
+++ b/src/xsprintf/queryfx.php
@@ -1,35 +1,23 @@
<?php
-/**
- * @group storage
- */
-function queryfx(AphrontDatabaseConnection $conn, $sql/* , ... */) {
+function queryfx(AphrontDatabaseConnection $conn, $sql /* , ... */) {
$argv = func_get_args();
$query = call_user_func_array('qsprintf', $argv);
$conn->executeRawQuery($query);
}
-/**
- * @group storage
- */
function vqueryfx(AphrontDatabaseConnection $conn, $sql, array $argv) {
array_unshift($argv, $conn, $sql);
call_user_func_array('queryfx', $argv);
}
-/**
- * @group storage
- */
-function queryfx_all(AphrontDatabaseConnection $conn, $sql/* , ... */) {
+function queryfx_all(AphrontDatabaseConnection $conn, $sql /* , ... */) {
$argv = func_get_args();
call_user_func_array('queryfx', $argv);
return $conn->selectAllResults();
}
-/**
- * @group storage
- */
-function queryfx_one(AphrontDatabaseConnection $conn, $sql/* , ... */) {
+function queryfx_one(AphrontDatabaseConnection $conn, $sql /* , ... */) {
$argv = func_get_args();
$ret = call_user_func_array('queryfx_all', $argv);
if (count($ret) > 1) {
@@ -40,9 +28,6 @@
return null;
}
-/**
- * @group storage
- */
function vqueryfx_all(AphrontDatabaseConnection $conn, $sql, array $argv) {
array_unshift($argv, $conn, $sql);
call_user_func_array('queryfx', $argv);
diff --git a/src/xsprintf/urisprintf.php b/src/xsprintf/urisprintf.php
--- a/src/xsprintf/urisprintf.php
+++ b/src/xsprintf/urisprintf.php
@@ -26,7 +26,6 @@
/**
* @{function:urisprintf} callback for URI encoding.
- * @group markup
*/
function xsprintf_uri($userdata, &$pattern, &$pos, &$value, &$length) {
$type = $pattern[$pos];

File Metadata

Mime Type
text/plain
Expires
Sat, Nov 16, 2:08 AM (21 h, 9 m)
Storage Engine
amazon-s3
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
phabricator/secure/mn/pl/lxjcnenqbbtdccrv
Default Alt Text
D9856.diff (137 KB)

Event Timeline