mirror of
https://github.com/WordPress/WordPress.git
synced 2024-12-22 17:18:32 +01:00
51afccc65f
This patch adds type annotations to internal and private methods of the HTML API and the supporting WP_Token_Map. Annotations have not been added to the public interfaces where it would likely crash a site if called wrong. These annotations should help avoid unnecessary type-related bugs (as have been uncovered in earlier work adding such annotations) and provide additional guidance to developers when interacting with these classes in an IDE. Developed in https://github.com/WordPress/wordpress-develop/pull/6753 Discussed in https://core.trac.wordpress.org/ticket/61399 Props dmsnell, jonsurrell. See #61399. Built from https://develop.svn.wordpress.org/trunk@58769 git-svn-id: http://core.svn.wordpress.org/trunk@58171 1a063a9b-81f0-0310-95a4-ce76da25c4cd
65 lines
1.4 KiB
PHP
65 lines
1.4 KiB
PHP
<?php
|
|
/**
|
|
* HTML API: WP_HTML_Text_Replacement class
|
|
*
|
|
* @package WordPress
|
|
* @subpackage HTML-API
|
|
* @since 6.2.0
|
|
*/
|
|
|
|
/**
|
|
* Core class used by the HTML tag processor as a data structure for replacing
|
|
* existing content from start to end, allowing to drastically improve performance.
|
|
*
|
|
* This class is for internal usage of the WP_HTML_Tag_Processor class.
|
|
*
|
|
* @access private
|
|
* @since 6.2.0
|
|
* @since 6.5.0 Replace `end` with `length` to more closely match `substr()`.
|
|
*
|
|
* @see WP_HTML_Tag_Processor
|
|
*/
|
|
class WP_HTML_Text_Replacement {
|
|
/**
|
|
* Byte offset into document where replacement span begins.
|
|
*
|
|
* @since 6.2.0
|
|
*
|
|
* @var int
|
|
*/
|
|
public $start;
|
|
|
|
/**
|
|
* Byte length of span being replaced.
|
|
*
|
|
* @since 6.5.0
|
|
*
|
|
* @var int
|
|
*/
|
|
public $length;
|
|
|
|
/**
|
|
* Span of text to insert in document to replace existing content from start to end.
|
|
*
|
|
* @since 6.2.0
|
|
*
|
|
* @var string
|
|
*/
|
|
public $text;
|
|
|
|
/**
|
|
* Constructor.
|
|
*
|
|
* @since 6.2.0
|
|
*
|
|
* @param int $start Byte offset into document where replacement span begins.
|
|
* @param int $length Byte length of span in document being replaced.
|
|
* @param string $text Span of text to insert in document to replace existing content from start to end.
|
|
*/
|
|
public function __construct( int $start, int $length, string $text ) {
|
|
$this->start = $start;
|
|
$this->length = $length;
|
|
$this->text = $text;
|
|
}
|
|
}
|