jcb-compiler/src/763d137c-42bc-4282-98d8-cc5c0654985f/README.md
2023-04-30 01:34:15 +02:00

132 lines
3.5 KiB
Markdown

```
██████╗ ██████╗ ██╗ ██╗███████╗██████╗
██╔══██╗██╔═══██╗██║ ██║██╔════╝██╔══██╗
██████╔╝██║ ██║██║ █╗ ██║█████╗ ██████╔╝
██╔═══╝ ██║ ██║██║███╗██║██╔══╝ ██╔══██╗
██║ ╚██████╔╝╚███╔███╔╝███████╗██║ ██║
╚═╝ ╚═════╝ ╚══╝╚══╝ ╚══════╝╚═╝ ╚═╝
```
# final class Injector (Details)
> namespace: **VDM\Joomla\Componentbuilder\Compiler\Power**
```uml
@startuml
class Injector << (F,LightGreen) >> #Green {
# Power $power
# Extractor $extractor
# Parser $parser
# Placeholder $placeholder
# array $map
# array $useStatements
# array $traits
+ __construct(?Power $power = null, ?Extractor $extractor = null, ...)
+ power(string $code) : string
# update(array $guids, string $code) : string
# inspect(object $power, ?array $useStatements, ...) : ?string
# getName(string $useStatement) : ?string
# getUniqueName(string $name, string $namespace, ...) : string
# removeLastSpace(string $namespace) : string
# addUseStatements(string $code, ?array $useStatements) : string
# addLines(string $code, string $lines) : string
# addLinesAfterDefinedLine(string $code, string $lines) : string
}
note right of Injector::__construct
Constructor.
since: 3.2.0
arguments:
?Power $power = null
?Extractor $extractor = null
?Parser $parser = null
?Placeholder $placeholder = null
end note
note left of Injector::power
Inject the powers found in the code
since: 3.2.0
return: string
end note
note right of Injector::update
Update the code
since: 3.2.0
return: string
end note
note left of Injector::inspect
inspect the super power
since: 3.2.0
return: ?string
arguments:
object $power
?array $useStatements
?array $traits
end note
note right of Injector::getName
Extracts the class name from a use statement.
since: 3.2.0
return: ?string
end note
note left of Injector::getUniqueName
Removes the last space from the namespace.
since: 3.2.0
return: string
arguments:
string $name
string $namespace
array $useOther
end note
note right of Injector::removeLastSpace
Removes the last space from the namespace.
since: 3.2.0
return: string
end note
note left of Injector::addUseStatements
Insert a line before the class declaration in the given class code.
since: 3.2.0
return: string
end note
note right of Injector::addLines
Insert a line before the class declaration in the given class code.
since: 3.2.0
return: string
end note
note left of Injector::addLinesAfterDefinedLine
Inserts a new line after the defined('_JEXEC') line.
since: 3.2.0
return: string
end note
@enduml
```
---
```
██╗ ██████╗██████╗
██║██╔════╝██╔══██╗
██║██║ ██████╔╝
██ ██║██║ ██╔══██╗
╚█████╔╝╚██████╗██████╔╝
╚════╝ ╚═════╝╚═════╝
```
> Build with [Joomla Component Builder](https://git.vdm.dev/joomla/Component-Builder)