Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F14051584
D9856.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
137 KB
Referenced Files
None
Subscribers
None
D9856.diff
View Options
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
Details
Attached
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)
Attached To
Mode
D9856: Remove `@group` annotations
Attached
Detach File
Event Timeline
Log In to Comment