Documentation

File extends AbstractFactory
in package

Strategy to create File element from the provided filename.

This class supports extra middle wares to add extra steps to the creation process.

Table of Contents

SKIPPED_NODE_TYPES  = [PhpParserNodeStmtDeclare_::class, PhpParserNodeStmtInlineHTML::class]
$docBlockFactory  : DocBlockFactoryInterface
$middlewareChain  : callable
$nodesFactory  : NodesFactory
__construct()  : mixed
Initializes the object.
create()  : void
Creates an Element out of the given object.
matches()  : bool
Returns true when the strategy is able to handle the object.
createDocBlock()  : DocBlock|null
createFileDocBlock()  : DocBlock|null
doCreate()  : void
Creates an File out of the given object.
createElements()  : void
createFile()  : File

Constants

SKIPPED_NODE_TYPES

private mixed SKIPPED_NODE_TYPES = [PhpParserNodeStmtDeclare_::class, PhpParserNodeStmtInlineHTML::class]

Properties

$middlewareChain

private callable $middlewareChain

Methods

create()

Creates an Element out of the given object.

public create(ContextStack $context, object $object, StrategyContainer $strategies) : void

Since an object might contain other objects that need to be converted the $stategies are passed so it can be used to create nested Elements. The passed ContextStack contains a stack of upstream created Elements that can be manipulated by factories. This allows the factory to also impact on parent objects of earlier created elements.

Parameters
$context : ContextStack

context to set the factory result.

$object : object

object to convert to an Element

$strategies : StrategyContainer

used to convert nested objects.

Return values
void

matches()

Returns true when the strategy is able to handle the object.

public matches(ContextStack $context, object $object) : bool
Parameters
$context : ContextStack
$object : object

object to check.

Return values
bool

createFileDocBlock()

protected createFileDocBlock([Context|null $context = null ][, array<string|int, Node$nodes = [] ]) : DocBlock|null
Parameters
$context : Context|null = null
$nodes : array<string|int, Node> = []
Return values
DocBlock|null

doCreate()

Creates an File out of the given object.

protected doCreate(ContextStack $context, File $object, StrategyContainer $strategies) : void

Since an object might contain other objects that need to be converted the $factory is passed so it can be used to create nested Elements.

Parameters
$context : ContextStack

used to convert nested objects.

$object : File

path to the file to convert to an File object.

$strategies : StrategyContainer

used to convert nested objects.

Return values
void

Search results