UmlDirective
extends BaseDirective
in package
Renders a uml diagram, example:
.. uml:: skinparam activityBorderColor #516f42 skinparam activityBackgroundColor #a3dc7f skinparam shadowing false
start :Boot the application; :Parse files into an AST; :Transform AST into artifacts; stop
Table of Contents
Properties
- $documentNameResolver : DocumentNameResolverInterface
- $logger : LoggerInterface
Methods
- __construct() : mixed
- getAliases() : array<string|int, string>
- Allow a directive to be registered under multiple names.
- getName() : string
- Get the directive name
- process() : Node|null
- This is the function called by the parser to process the directive, it can be overloaded to do anything with the document, like tweaking nodes or change the parser context
- processNode() : Node
- This can be overloaded to write a directive that just create one node for the document, which is common
- optionsToArray() : array<string, scalar|null>
- loadExternalUmlFile() : string|null
Properties
$documentNameResolver read-only
private
DocumentNameResolverInterface
$documentNameResolver
$logger read-only
private
LoggerInterface
$logger
Methods
__construct()
public
__construct(LoggerInterface $logger, DocumentNameResolverInterface $documentNameResolver) : mixed
Parameters
- $logger : LoggerInterface
- $documentNameResolver : DocumentNameResolverInterface
getAliases()
Allow a directive to be registered under multiple names.
public
getAliases() : array<string|int, string>
Aliases can be used for directives whose name has been deprecated or allows for multiple spellings.
Return values
array<string|int, string>getName()
Get the directive name
public
getName() : string
Return values
stringprocess()
This is the function called by the parser to process the directive, it can be overloaded to do anything with the document, like tweaking nodes or change the parser context
public
process(BlockContext $blockContext, Directive $directive) : Node|null
Parameters
- $blockContext : BlockContext
-
the current document context with the content of the directive
- $directive : Directive
-
parsed directive containing options and variable
Return values
Node|nullprocessNode()
This can be overloaded to write a directive that just create one node for the document, which is common
public
processNode(BlockContext $blockContext, Directive $directive) : Node
The arguments are the same that process
Parameters
- $blockContext : BlockContext
- $directive : Directive
Return values
NodeoptionsToArray()
protected
optionsToArray(array<string|int, DirectiveOption> $options) : array<string, scalar|null>
Parameters
- $options : array<string|int, DirectiveOption>
Return values
array<string, scalar|null>loadExternalUmlFile()
private
loadExternalUmlFile(BlockContext $blockContext, string $path) : string|null
Parameters
- $blockContext : BlockContext
- $path : string