Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
n/a
0 / 0
n/a
0 / 0
CRAP
n/a
0 / 0
1<?php declare(strict_types=1);
2
3namespace Computator\FrameworkUtils\PHPTemplate\UserApi;
4
5use Computator\FrameworkUtils\PHPTemplate\RenderObjects;
6use Computator\FrameworkUtils\PHPTemplate\Templates;
7
8/**
9 * Internal interface to a `Renderer`.
10 *
11 * These methods are meant for internal use to control the rendering process and
12 * are not intended for use by end-users.
13 *
14 * @see RenderClient The end-user interface to a `Renderer` intended for public use.
15 */
16interface RenderManager {
17    public function getTemplateAsProxy(string $template): RenderObjects\TemplateRenderProxy;
18
19    public function getTemplateInstanceAsProxyById(int $orig_proxy_id): ?RenderObjects\TemplateRenderProxy;
20
21    /** @param array<string,mixed> $context */
22    public function renderProxiedTemplate(RenderObjects\TemplateRenderProxy $proxy, array $context): void;
23
24    public function renderError(Templates\PHPString|Templates\Text|string $error): void;
25
26    public function setParentForTemplate(Templates\Base $tpl, string $parent_template): void;
27
28    public function startRenderingBlock(Templates\Base $tpl, string $block_name): void;
29
30    public function endRenderingBlock(Templates\Base $tpl): void;
31
32    public function renderChildBlock(Templates\Base $tpl, string $block_name): bool;
33
34    public function renderChildContent(Templates\Base $tpl): void;
35
36    public function setInsertionPoint(string $insert_name): void;
37
38    public function startAppendingToInsertionPoint(string $insert_name): void;
39
40    public function stopAppendingToInsertionPoint(): void;
41}