leilukin-tumbleblog/includes/lib/Twig/TwigCallableInterface.php

54 lines
1.2 KiB
PHP

<?php
/*
* This file is part of Twig.
*
* (c) Fabien Potencier
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Twig;
/**
* @author Fabien Potencier <fabien@symfony.com>
*/
interface TwigCallableInterface extends \Stringable
{
public function getName(): string;
public function getType(): string;
public function getDynamicName(): string;
/**
* @return callable|array{class-string, string}|null
*/
public function getCallable();
public function getNodeClass(): string;
public function needsCharset(): bool;
public function needsEnvironment(): bool;
public function needsContext(): bool;
public function withDynamicArguments(string $name, string $dynamicName, array $arguments): self;
public function getArguments(): array;
public function isVariadic(): bool;
public function isDeprecated(): bool;
public function getDeprecatingPackage(): string;
public function getDeprecatedVersion(): string;
public function getAlternative(): ?string;
public function getMinimalNumberOfRequiredArguments(): int;
}