Among other things, this removed mention of MediaWiki classes from the library and adds a README.md that attempts to define constraints for interoperability between libraries producing MessageValues and formatter implementations that are expected to handle them. This also renames "TextParam" to "ScalarParam", as that seems a more accurate name for the class. Change-Id: I264dd4de394d734a87929cf4740779e7b7d0e04a
34 lines
895 B
PHP
34 lines
895 B
PHP
<?php
|
|
|
|
namespace Wikimedia\Message;
|
|
|
|
/**
|
|
* Converts MessageValue message specifiers to localized plain text in a certain language.
|
|
*
|
|
* The caller cannot modify the details of message translation, such as which
|
|
* of multiple sources the message is taken from. Any such flags may be injected
|
|
* into the factory constructor.
|
|
*
|
|
* Implementations of TextFormatter are not required to perfectly format
|
|
* any message in any language. Implementations should make a best effort to
|
|
* produce human-readable text.
|
|
*
|
|
* @package MediaWiki\MessageFormatter
|
|
*/
|
|
interface ITextFormatter {
|
|
/**
|
|
* Get the internal language code in which format() is
|
|
* @return string
|
|
*/
|
|
function getLangCode();
|
|
|
|
/**
|
|
* Convert a MessageValue to text.
|
|
*
|
|
* The result is not safe for use as raw HTML.
|
|
*
|
|
* @param MessageValue $message
|
|
* @return string
|
|
*/
|
|
function format( MessageValue $message );
|
|
}
|