Files
development/vendor/felixfbecker/language-server-protocol/src/MarkupContent.php
2023-03-09 16:27:10 +09:00

53 lines
1.5 KiB
PHP

<?php
namespace LanguageServerProtocol;
/**
* A `MarkupContent` literal represents a string value which content is interpreted base on its
* kind flag. Currently the protocol supports `plaintext` and `markdown` as markup kinds.
*
* If the kind is `markdown` then the value can contain fenced code blocks like in GitHub issues.
* See https://help.github.com/articles/creating-and-highlighting-code-blocks/#syntax-highlighting
*
* Here is an example how such a string can be constructed using JavaScript / TypeScript:
* ```ts
* let markdown: MarkdownContent = {
* kind: MarkupKind.Markdown,
* value: [
* '# Header',
* 'Some text',
* '```typescript',
* 'someCode();',
* '```'
* ].join('\n')
* };
* ```
*
* *Please Note* that clients might sanitize the return markdown. A client could decide to
* remove HTML from the markdown to avoid script execution.
*/
class MarkupContent
{
/**
* @var string the type of the Markup (from MarkupKind)
*/
public $kind;
/**
* @var string the content itself
*/
public $value;
/**
* @param string $kind the type of the Markup
* @param string $value the content itself
*/
public function __construct(string $kind = null, string $value = null)
{
/** @psalm-suppress PossiblyNullPropertyAssignmentValue */
$this->kind = $kind;
/** @psalm-suppress PossiblyNullPropertyAssignmentValue */
$this->value = $value;
}
}