Merge "Make DBAccessBase use DBConnRef, rename $wiki, and hide getLoadBalancer()"
[lhc/web/wiklou.git] / includes / libs / Message / ParamType.php
1 <?php
2
3 namespace Wikimedia\Message;
4
5 /**
6 * The constants used to specify parameter types. The values of the constants
7 * are an unstable implementation detail.
8 *
9 * Unless otherwise noted, these should be used with an instance of ScalarParam.
10 */
11 class ParamType {
12 /** A simple text string or another MessageValue, not otherwise formatted. */
13 const TEXT = 'text';
14
15 /** A number, to be formatted using local digits and separators */
16 const NUM = 'num';
17
18 /**
19 * A number of seconds, to be formatted as natural language text.
20 * The value will be output exactly.
21 */
22 const DURATION_LONG = 'duration';
23
24 /**
25 * A number of seconds, to be formatted as natural language text in an abbreviated way.
26 * The output will be rounded to an appropriate magnitude.
27 */
28 const DURATION_SHORT = 'timeperiod';
29
30 /**
31 * An expiry time.
32 *
33 * The input is either a timestamp in one of the formats accepted by the
34 * Wikimedia\Timestamp library, or "infinity" if the thing doesn't expire.
35 *
36 * The output is a date and time in local format, or a string representing
37 * an "infinite" expiry.
38 */
39 const EXPIRY = 'expiry';
40
41 /** A number of bytes. The output will be rounded to an appropriate magnitude. */
42 const SIZE = 'size';
43
44 /** A number of bits per second. The output will be rounded to an appropriate magnitude. */
45 const BITRATE = 'bitrate';
46
47 /** A list of values. Must be used with ListParam. */
48 const LIST = 'list';
49
50 /**
51 * A text parameter which is substituted after formatter processing.
52 *
53 * The creator of the parameter and message is responsible for ensuring
54 * that the value will be safe for the intended output format, and
55 * documenting what that intended output format is.
56 */
57 const RAW = 'raw';
58
59 /**
60 * A text parameter which is substituted after formatter processing.
61 * The output will be escaped as appropriate for the output format so
62 * as to represent plain text rather than any sort of markup.
63 */
64 const PLAINTEXT = 'plaintext';
65 }