wp/wp-includes/class-wp-block-parser-frame.php
changeset 21 48c4eec2b7e6
child 22 8c2e4d02f4ef
equal deleted inserted replaced
20:7b1b88e27a20 21:48c4eec2b7e6
       
     1 <?php
       
     2 /**
       
     3  * Block Serialization Parser
       
     4  *
       
     5  * @package WordPress
       
     6  */
       
     7 
       
     8 /**
       
     9  * Class WP_Block_Parser_Frame
       
    10  *
       
    11  * Holds partial blocks in memory while parsing
       
    12  *
       
    13  * @internal
       
    14  * @since 5.0.0
       
    15  */
       
    16 class WP_Block_Parser_Frame {
       
    17 	/**
       
    18 	 * Full or partial block
       
    19 	 *
       
    20 	 * @since 5.0.0
       
    21 	 * @var WP_Block_Parser_Block
       
    22 	 */
       
    23 	public $block;
       
    24 
       
    25 	/**
       
    26 	 * Byte offset into document for start of parse token
       
    27 	 *
       
    28 	 * @since 5.0.0
       
    29 	 * @var int
       
    30 	 */
       
    31 	public $token_start;
       
    32 
       
    33 	/**
       
    34 	 * Byte length of entire parse token string
       
    35 	 *
       
    36 	 * @since 5.0.0
       
    37 	 * @var int
       
    38 	 */
       
    39 	public $token_length;
       
    40 
       
    41 	/**
       
    42 	 * Byte offset into document for after parse token ends
       
    43 	 * (used during reconstruction of stack into parse production)
       
    44 	 *
       
    45 	 * @since 5.0.0
       
    46 	 * @var int
       
    47 	 */
       
    48 	public $prev_offset;
       
    49 
       
    50 	/**
       
    51 	 * Byte offset into document where leading HTML before token starts
       
    52 	 *
       
    53 	 * @since 5.0.0
       
    54 	 * @var int
       
    55 	 */
       
    56 	public $leading_html_start;
       
    57 
       
    58 	/**
       
    59 	 * Constructor
       
    60 	 *
       
    61 	 * Will populate object properties from the provided arguments.
       
    62 	 *
       
    63 	 * @since 5.0.0
       
    64 	 *
       
    65 	 * @param WP_Block_Parser_Block $block              Full or partial block.
       
    66 	 * @param int                   $token_start        Byte offset into document for start of parse token.
       
    67 	 * @param int                   $token_length       Byte length of entire parse token string.
       
    68 	 * @param int                   $prev_offset        Byte offset into document for after parse token ends.
       
    69 	 * @param int                   $leading_html_start Byte offset into document where leading HTML before token starts.
       
    70 	 */
       
    71 	public function __construct( $block, $token_start, $token_length, $prev_offset = null, $leading_html_start = null ) {
       
    72 		$this->block              = $block;
       
    73 		$this->token_start        = $token_start;
       
    74 		$this->token_length       = $token_length;
       
    75 		$this->prev_offset        = isset( $prev_offset ) ? $prev_offset : $token_start + $token_length;
       
    76 		$this->leading_html_start = $leading_html_start;
       
    77 	}
       
    78 }