gulp-phug 1.3.4 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +26 -0
- package/index.js +38 -10
- package/package.json +4 -4
- package/support/bootstrap.php +6 -0
- package/support/composer.json +1 -1
- package/support/composer.lock +94 -179
- package/support/vendor/autoload.php +15 -0
- package/support/vendor/bin/phug +119 -0
- package/support/vendor/bin/var-dump-server +119 -0
- package/support/vendor/composer/ClassLoader.php +166 -32
- package/support/vendor/composer/InstalledVersions.php +387 -329
- package/support/vendor/composer/autoload_classmap.php +1 -5
- package/support/vendor/composer/autoload_files.php +2 -3
- package/support/vendor/composer/autoload_namespaces.php +1 -1
- package/support/vendor/composer/autoload_psr4.php +3 -4
- package/support/vendor/composer/autoload_real.php +12 -37
- package/support/vendor/composer/autoload_static.php +6 -17
- package/support/vendor/composer/installed.json +99 -186
- package/support/vendor/composer/installed.php +129 -151
- package/support/vendor/composer/platform_check.php +15 -4
- package/support/vendor/phug/phug/.github/workflows/coverage.yml +61 -0
- package/support/vendor/phug/phug/.github/workflows/multi-tester.yml +48 -0
- package/support/vendor/phug/phug/.github/workflows/split.yml +41 -0
- package/support/vendor/phug/phug/.github/workflows/style.yml +48 -0
- package/support/vendor/phug/phug/.github/workflows/tests.yml +48 -0
- package/support/vendor/phug/phug/.multi-tester.yml +47 -17
- package/support/vendor/phug/phug/composer.json +27 -18
- package/support/vendor/phug/phug/phpcs.xml +4 -0
- package/support/vendor/phug/phug/phpunit.xml +2 -0
- package/support/vendor/phug/phug/phug +1 -1
- package/support/vendor/phug/phug/release.php +8 -0
- package/support/vendor/phug/phug/src/Phug/Ast/Ast/Node.php +9 -3
- package/support/vendor/phug/phug/src/Phug/Ast/composer.json +2 -3
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/AbstractNodeCompiler.php +4 -4
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/Element/BlockElement.php +4 -4
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/AssignmentListNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/AssignmentNodeCompiler.php +10 -2
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/AttributeListNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/AttributeNodeCompiler.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/BlockNodeCompiler.php +3 -3
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/CaseNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/CodeNodeCompiler.php +2 -2
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/CommentNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/ConditionalNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/DoNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/DoctypeNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/DocumentNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/EachNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/ElementNodeCompiler.php +7 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/ExpressionNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/FilterNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/ForNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/ImportNodeCompiler.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/KeywordNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/MixinCallNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/MixinNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/TextNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/VariableNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/WhenNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/WhileNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompiler/YieldNodeCompiler.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler/NodeCompilerInterface.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Compiler/Compiler.php +2 -2
- package/support/vendor/phug/phug/src/Phug/Compiler/CompilerInterface.php +2 -2
- package/support/vendor/phug/phug/src/Phug/Compiler/composer.json +10 -7
- package/support/vendor/phug/phug/src/Phug/DependencyInjection/DependencyInjection.php +1 -1
- package/support/vendor/phug/phug/src/Phug/DependencyInjection/composer.json +3 -4
- package/support/vendor/phug/phug/src/Phug/Event/Event/ListenerQueue.php +3 -0
- package/support/vendor/phug/phug/src/Phug/Event/EventManagerTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Event/composer.json +2 -3
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/AbstractElement.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/AbstractFormat.php +17 -14
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/AssignmentContainerInterface.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AbstractAssignmentContainerElement.php +11 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AbstractMarkupElement.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AbstractValueElement.php +3 -3
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AnonymousBlockElement.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AssignmentElement.php +13 -8
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/AttributeElement.php +7 -4
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/CodeElement.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/KeywordElement.php +3 -3
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/MarkupElement.php +13 -11
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/MixinCallElement.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/MixinElement.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Element/VariableElement.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Event/FormatEvent.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Format/HtmlFormat.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Format/XhtmlFormat.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Format/XmlFormat.php +214 -21
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/FormatInterface.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Partial/AssignmentHelpersTrait.php +7 -4
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Partial/HandleVariable.php +4 -4
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Partial/MagicAccessorTrait.php +1 -7
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter/Partial/PatternTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/Formatter.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Formatter/composer.json +5 -6
- package/support/vendor/phug/phug/src/Phug/Invoker/Invoker.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Invoker/composer.json +9 -6
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/AbstractToken.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Partial/IndentStyleTrait.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/AssignmentScanner.php +8 -2
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/AttributeScanner.php +24 -12
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/ConditionalScanner.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/FilterScanner.php +6 -10
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/IndentationScanner.php +2 -2
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/KeywordScanner.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/MultilineScanner.php +6 -12
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/Partial/TrailingOutdentHandlerTrait.php +26 -0
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/Scanner/TextScanner.php +3 -3
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/State.php +9 -9
- package/support/vendor/phug/phug/src/Phug/Lexer/Lexer/TokenInterface.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Lexer/composer.json +4 -5
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Event/NodeEvent.php +3 -2
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/AssignmentNode.php +5 -1
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/AttributeNode.php +4 -1
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/ElementNode.php +5 -1
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/FilterNode.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/MixinCallNode.php +5 -1
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node/MixinNode.php +5 -1
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/Node.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/State.php +4 -4
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AbstractTokenHandler.php +87 -0
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AssignmentTokenHandler.php +6 -21
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AttributeEndTokenHandler.php +5 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AttributeStartTokenHandler.php +7 -23
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AttributeTokenHandler.php +21 -19
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/AutoCloseTokenHandler.php +5 -17
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/BlockTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/CaseTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ClassTokenHandler.php +7 -34
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/CodeTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/CommentTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ConditionalTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/DoTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/DoctypeTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/EachTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ExpansionTokenHandler.php +5 -11
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ExpressionTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/FilterTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ForTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/IdTokenHandler.php +7 -33
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/ImportTokenHandler.php +14 -20
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/IndentTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/InterpolationEndTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/InterpolationStartTokenHandler.php +29 -30
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/KeywordTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/MixinCallTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/MixinTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/NewLineTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/OutdentTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/Partial/StaticAttributeTrait.php +36 -0
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/TagInterpolationEndTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/TagInterpolationStartTokenHandler.php +7 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/TagTokenHandler.php +6 -21
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/TextTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/VariableTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/WhenTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/WhileTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser/TokenHandler/YieldTokenHandler.php +4 -10
- package/support/vendor/phug/phug/src/Phug/Parser/Parser.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Parser/ParserException.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Parser/composer.json +5 -6
- package/support/vendor/phug/phug/src/Phug/Phug/Phug/Cli.php +5 -5
- package/support/vendor/phug/phug/src/Phug/Phug/Phug/Partial/ExtensionsTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Phug/Phug/Partial/FacadeOptionsTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Phug/Phug/Partial/PluginEnablerTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Phug/Phug/Phug.php +14 -5
- package/support/vendor/phug/phug/src/Phug/Phug/composer.json +9 -6
- package/support/vendor/phug/phug/src/Phug/Reader/Reader.php +13 -13
- package/support/vendor/phug/phug/src/Phug/Reader/composer.json +6 -2
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Adapter/FileAdapter.php +21 -4
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Adapter/Stream/Template.php +5 -0
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Adapter/StreamAdapter.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/CacheInterface.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Partial/AdapterTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Partial/Debug/DebuggerTrait.php +56 -10
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Partial/RendererOptionsTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Profiler/Dump.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Profiler/LinkDump.php +2 -2
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Profiler/ProfilerModule.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/Renderer/Task/TasksGroup.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Renderer/composer.json +10 -6
- package/support/vendor/phug/phug/src/Phug/Util/CompatibilityUtil/TestCaseTyped.php +67 -0
- package/support/vendor/phug/phug/src/Phug/Util/CompatibilityUtil/TestCaseUntyped.php +67 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/AttributesInterface.php +16 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/AttributesOrderInterface.php +17 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/AttributesStorage.php +44 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/Collection.php +2 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/OrderableInterface.php +22 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/OrderedValue.php +25 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/AttributeTrait.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/AttributesOrderTrait.php +19 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/ModuleContainerTrait.php +3 -3
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/OptionTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/OrderTrait.php +27 -0
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/StaticMemberTrait.php +1 -1
- package/support/vendor/phug/phug/src/Phug/Util/Util/Partial/ValueTrait.php +5 -3
- package/support/vendor/phug/phug/src/Phug/Util/Util/SandBox.php +2 -1
- package/support/vendor/phug/phug/src/Phug/Util/Util/TestCase.php +47 -4
- package/support/vendor/phug/phug/src/Phug/Util/composer.json +7 -8
- package/support/vendor/symfony/deprecation-contracts/CHANGELOG.md +5 -0
- package/support/vendor/symfony/{polyfill-php72 → deprecation-contracts}/LICENSE +1 -1
- package/support/vendor/symfony/deprecation-contracts/README.md +26 -0
- package/support/vendor/symfony/{polyfill-php72 → deprecation-contracts}/composer.json +9 -9
- package/support/vendor/symfony/deprecation-contracts/function.php +27 -0
- package/support/vendor/symfony/polyfill-mbstring/LICENSE +1 -1
- package/support/vendor/symfony/polyfill-mbstring/Mbstring.php +256 -57
- package/support/vendor/symfony/polyfill-mbstring/README.md +1 -1
- package/support/vendor/symfony/polyfill-mbstring/Resources/unidata/caseFolding.php +119 -0
- package/support/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php +1 -1
- package/support/vendor/symfony/polyfill-mbstring/Resources/unidata/upperCase.php +102 -27
- package/support/vendor/symfony/polyfill-mbstring/bootstrap.php +33 -8
- package/support/vendor/symfony/polyfill-mbstring/bootstrap80.php +167 -0
- package/support/vendor/symfony/polyfill-mbstring/composer.json +5 -4
- package/support/vendor/symfony/var-dumper/CHANGELOG.md +63 -0
- package/support/vendor/symfony/var-dumper/Caster/AddressInfoCaster.php +82 -0
- package/support/vendor/symfony/var-dumper/Caster/AmqpCaster.php +12 -10
- package/support/vendor/symfony/var-dumper/Caster/ArgsStub.php +6 -7
- package/support/vendor/symfony/var-dumper/Caster/Caster.php +59 -31
- package/support/vendor/symfony/var-dumper/Caster/ClassStub.php +7 -9
- package/support/vendor/symfony/var-dumper/Caster/ConstStub.php +20 -4
- package/support/vendor/symfony/var-dumper/Caster/CurlCaster.php +31 -0
- package/support/vendor/symfony/var-dumper/Caster/CutArrayStub.php +1 -1
- package/support/vendor/symfony/var-dumper/Caster/CutStub.php +2 -2
- package/support/vendor/symfony/var-dumper/Caster/DOMCaster.php +61 -156
- package/support/vendor/symfony/var-dumper/Caster/DateCaster.php +27 -26
- package/support/vendor/symfony/var-dumper/Caster/DoctrineCaster.php +6 -4
- package/support/vendor/symfony/var-dumper/Caster/DsCaster.php +1 -1
- package/support/vendor/symfony/var-dumper/Caster/DsPairStub.php +1 -1
- package/support/vendor/symfony/var-dumper/Caster/EnumStub.php +4 -5
- package/support/vendor/symfony/var-dumper/Caster/ExceptionCaster.php +64 -49
- package/support/vendor/symfony/var-dumper/Caster/FFICaster.php +171 -0
- package/support/vendor/symfony/var-dumper/Caster/FiberCaster.php +43 -0
- package/support/vendor/symfony/var-dumper/Caster/FrameStub.php +6 -8
- package/support/vendor/symfony/var-dumper/Caster/GdCaster.php +30 -0
- package/support/vendor/symfony/var-dumper/Caster/GmpCaster.php +4 -2
- package/support/vendor/symfony/var-dumper/Caster/ImagineCaster.php +2 -0
- package/support/vendor/symfony/var-dumper/Caster/ImgStub.php +1 -1
- package/support/vendor/symfony/var-dumper/Caster/IntlCaster.php +10 -8
- package/support/vendor/symfony/var-dumper/Caster/LinkStub.php +14 -17
- package/support/vendor/symfony/var-dumper/Caster/MemcachedCaster.php +10 -8
- package/support/vendor/symfony/var-dumper/Caster/MysqliCaster.php +33 -0
- package/support/vendor/symfony/var-dumper/Caster/OpenSSLCaster.php +69 -0
- package/support/vendor/symfony/var-dumper/Caster/PdoCaster.php +8 -6
- package/support/vendor/symfony/var-dumper/Caster/PgSqlCaster.php +21 -19
- package/support/vendor/symfony/var-dumper/Caster/ProxyManagerCaster.php +4 -2
- package/support/vendor/symfony/var-dumper/Caster/RdKafkaCaster.php +188 -0
- package/support/vendor/symfony/var-dumper/Caster/RedisCaster.php +31 -31
- package/support/vendor/symfony/var-dumper/Caster/ReflectionCaster.php +100 -44
- package/support/vendor/symfony/var-dumper/Caster/ResourceCaster.php +33 -46
- package/support/vendor/symfony/var-dumper/Caster/ScalarStub.php +27 -0
- package/support/vendor/symfony/var-dumper/Caster/SocketCaster.php +64 -0
- package/support/vendor/symfony/var-dumper/Caster/SplCaster.php +57 -44
- package/support/vendor/symfony/var-dumper/Caster/SqliteCaster.php +32 -0
- package/support/vendor/symfony/var-dumper/Caster/StubCaster.php +15 -5
- package/support/vendor/symfony/var-dumper/Caster/SymfonyCaster.php +66 -10
- package/support/vendor/symfony/var-dumper/Caster/TraceStub.php +7 -11
- package/support/vendor/symfony/var-dumper/Caster/UninitializedStub.php +25 -0
- package/support/vendor/symfony/var-dumper/Caster/UuidCaster.php +2 -0
- package/support/vendor/symfony/var-dumper/Caster/VirtualStub.php +21 -0
- package/support/vendor/symfony/var-dumper/Caster/XmlReaderCaster.php +25 -10
- package/support/vendor/symfony/var-dumper/Caster/XmlResourceCaster.php +7 -5
- package/support/vendor/symfony/var-dumper/Cloner/AbstractCloner.php +103 -72
- package/support/vendor/symfony/var-dumper/Cloner/ClonerInterface.php +1 -5
- package/support/vendor/symfony/var-dumper/Cloner/Cursor.php +21 -21
- package/support/vendor/symfony/var-dumper/Cloner/Data.php +51 -77
- package/support/vendor/symfony/var-dumper/Cloner/DumperInterface.php +11 -14
- package/support/vendor/symfony/var-dumper/Cloner/Stub.php +40 -31
- package/support/vendor/symfony/var-dumper/Cloner/VarCloner.php +21 -104
- package/support/vendor/symfony/var-dumper/Command/Descriptor/CliDescriptor.php +9 -19
- package/support/vendor/symfony/var-dumper/Command/Descriptor/HtmlDescriptor.php +10 -11
- package/support/vendor/symfony/var-dumper/Command/ServerDumpCommand.php +27 -15
- package/support/vendor/symfony/var-dumper/Dumper/AbstractDumper.php +68 -48
- package/support/vendor/symfony/var-dumper/Dumper/CliDumper.php +126 -113
- package/support/vendor/symfony/var-dumper/Dumper/ContextProvider/CliContextProvider.php +1 -1
- package/support/vendor/symfony/var-dumper/Dumper/ContextProvider/ContextProviderInterface.php +0 -3
- package/support/vendor/symfony/var-dumper/Dumper/ContextProvider/RequestContextProvider.php +5 -6
- package/support/vendor/symfony/var-dumper/Dumper/ContextProvider/SourceContextProvider.php +10 -15
- package/support/vendor/symfony/var-dumper/Dumper/ContextualizedDumper.php +8 -11
- package/support/vendor/symfony/var-dumper/Dumper/DataDumperInterface.php +3 -0
- package/support/vendor/symfony/var-dumper/Dumper/HtmlDumper.php +122 -146
- package/support/vendor/symfony/var-dumper/Dumper/ServerDumper.php +10 -10
- package/support/vendor/symfony/var-dumper/Exception/ThrowingCasterException.php +1 -1
- package/support/vendor/symfony/var-dumper/LICENSE +1 -1
- package/support/vendor/symfony/var-dumper/README.md +6 -6
- package/support/vendor/symfony/var-dumper/Resources/bin/var-dump-server +4 -0
- package/support/vendor/symfony/var-dumper/Resources/functions/dump.php +35 -10
- package/support/vendor/symfony/var-dumper/Server/Connection.php +16 -14
- package/support/vendor/symfony/var-dumper/Server/DumpServer.php +16 -14
- package/support/vendor/symfony/var-dumper/Test/VarDumperTestTrait.php +9 -9
- package/support/vendor/symfony/var-dumper/VarDumper.php +69 -17
- package/support/vendor/symfony/var-dumper/composer.json +10 -16
- package/support/vendor/symfony/polyfill-php72/Php72.php +0 -217
- package/support/vendor/symfony/polyfill-php72/README.md +0 -28
- package/support/vendor/symfony/polyfill-php72/bootstrap.php +0 -57
- package/support/vendor/symfony/polyfill-php80/LICENSE +0 -19
- package/support/vendor/symfony/polyfill-php80/Php80.php +0 -105
- package/support/vendor/symfony/polyfill-php80/README.md +0 -24
- package/support/vendor/symfony/polyfill-php80/Resources/stubs/Attribute.php +0 -22
- package/support/vendor/symfony/polyfill-php80/Resources/stubs/Stringable.php +0 -11
- package/support/vendor/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php +0 -5
- package/support/vendor/symfony/polyfill-php80/Resources/stubs/ValueError.php +0 -5
- package/support/vendor/symfony/polyfill-php80/bootstrap.php +0 -42
- package/support/vendor/symfony/polyfill-php80/composer.json +0 -40
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
#!/usr/bin/env php
|
|
2
|
+
<?php
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Proxy PHP file generated by Composer
|
|
6
|
+
*
|
|
7
|
+
* This file includes the referenced bin path (../phug/phug/phug)
|
|
8
|
+
* using a stream wrapper to prevent the shebang from being output on PHP<8
|
|
9
|
+
*
|
|
10
|
+
* @generated
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
namespace Composer;
|
|
14
|
+
|
|
15
|
+
$GLOBALS['_composer_bin_dir'] = __DIR__;
|
|
16
|
+
$GLOBALS['_composer_autoload_path'] = __DIR__ . '/..'.'/autoload.php';
|
|
17
|
+
|
|
18
|
+
if (PHP_VERSION_ID < 80000) {
|
|
19
|
+
if (!class_exists('Composer\BinProxyWrapper')) {
|
|
20
|
+
/**
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
|
+
final class BinProxyWrapper
|
|
24
|
+
{
|
|
25
|
+
private $handle;
|
|
26
|
+
private $position;
|
|
27
|
+
private $realpath;
|
|
28
|
+
|
|
29
|
+
public function stream_open($path, $mode, $options, &$opened_path)
|
|
30
|
+
{
|
|
31
|
+
// get rid of phpvfscomposer:// prefix for __FILE__ & __DIR__ resolution
|
|
32
|
+
$opened_path = substr($path, 17);
|
|
33
|
+
$this->realpath = realpath($opened_path) ?: $opened_path;
|
|
34
|
+
$opened_path = $this->realpath;
|
|
35
|
+
$this->handle = fopen($this->realpath, $mode);
|
|
36
|
+
$this->position = 0;
|
|
37
|
+
|
|
38
|
+
return (bool) $this->handle;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
public function stream_read($count)
|
|
42
|
+
{
|
|
43
|
+
$data = fread($this->handle, $count);
|
|
44
|
+
|
|
45
|
+
if ($this->position === 0) {
|
|
46
|
+
$data = preg_replace('{^#!.*\r?\n}', '', $data);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
$this->position += strlen($data);
|
|
50
|
+
|
|
51
|
+
return $data;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
public function stream_cast($castAs)
|
|
55
|
+
{
|
|
56
|
+
return $this->handle;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
public function stream_close()
|
|
60
|
+
{
|
|
61
|
+
fclose($this->handle);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
public function stream_lock($operation)
|
|
65
|
+
{
|
|
66
|
+
return $operation ? flock($this->handle, $operation) : true;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
public function stream_seek($offset, $whence)
|
|
70
|
+
{
|
|
71
|
+
if (0 === fseek($this->handle, $offset, $whence)) {
|
|
72
|
+
$this->position = ftell($this->handle);
|
|
73
|
+
return true;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
public function stream_tell()
|
|
80
|
+
{
|
|
81
|
+
return $this->position;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
public function stream_eof()
|
|
85
|
+
{
|
|
86
|
+
return feof($this->handle);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
public function stream_stat()
|
|
90
|
+
{
|
|
91
|
+
return array();
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
public function stream_set_option($option, $arg1, $arg2)
|
|
95
|
+
{
|
|
96
|
+
return true;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
public function url_stat($path, $flags)
|
|
100
|
+
{
|
|
101
|
+
$path = substr($path, 17);
|
|
102
|
+
if (file_exists($path)) {
|
|
103
|
+
return stat($path);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
if (
|
|
112
|
+
(function_exists('stream_get_wrappers') && in_array('phpvfscomposer', stream_get_wrappers(), true))
|
|
113
|
+
|| (function_exists('stream_wrapper_register') && stream_wrapper_register('phpvfscomposer', 'Composer\BinProxyWrapper'))
|
|
114
|
+
) {
|
|
115
|
+
return include("phpvfscomposer://" . __DIR__ . '/..'.'/phug/phug/phug');
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
return include __DIR__ . '/..'.'/phug/phug/phug';
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
#!/usr/bin/env php
|
|
2
|
+
<?php
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Proxy PHP file generated by Composer
|
|
6
|
+
*
|
|
7
|
+
* This file includes the referenced bin path (../symfony/var-dumper/Resources/bin/var-dump-server)
|
|
8
|
+
* using a stream wrapper to prevent the shebang from being output on PHP<8
|
|
9
|
+
*
|
|
10
|
+
* @generated
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
namespace Composer;
|
|
14
|
+
|
|
15
|
+
$GLOBALS['_composer_bin_dir'] = __DIR__;
|
|
16
|
+
$GLOBALS['_composer_autoload_path'] = __DIR__ . '/..'.'/autoload.php';
|
|
17
|
+
|
|
18
|
+
if (PHP_VERSION_ID < 80000) {
|
|
19
|
+
if (!class_exists('Composer\BinProxyWrapper')) {
|
|
20
|
+
/**
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
|
+
final class BinProxyWrapper
|
|
24
|
+
{
|
|
25
|
+
private $handle;
|
|
26
|
+
private $position;
|
|
27
|
+
private $realpath;
|
|
28
|
+
|
|
29
|
+
public function stream_open($path, $mode, $options, &$opened_path)
|
|
30
|
+
{
|
|
31
|
+
// get rid of phpvfscomposer:// prefix for __FILE__ & __DIR__ resolution
|
|
32
|
+
$opened_path = substr($path, 17);
|
|
33
|
+
$this->realpath = realpath($opened_path) ?: $opened_path;
|
|
34
|
+
$opened_path = $this->realpath;
|
|
35
|
+
$this->handle = fopen($this->realpath, $mode);
|
|
36
|
+
$this->position = 0;
|
|
37
|
+
|
|
38
|
+
return (bool) $this->handle;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
public function stream_read($count)
|
|
42
|
+
{
|
|
43
|
+
$data = fread($this->handle, $count);
|
|
44
|
+
|
|
45
|
+
if ($this->position === 0) {
|
|
46
|
+
$data = preg_replace('{^#!.*\r?\n}', '', $data);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
$this->position += strlen($data);
|
|
50
|
+
|
|
51
|
+
return $data;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
public function stream_cast($castAs)
|
|
55
|
+
{
|
|
56
|
+
return $this->handle;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
public function stream_close()
|
|
60
|
+
{
|
|
61
|
+
fclose($this->handle);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
public function stream_lock($operation)
|
|
65
|
+
{
|
|
66
|
+
return $operation ? flock($this->handle, $operation) : true;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
public function stream_seek($offset, $whence)
|
|
70
|
+
{
|
|
71
|
+
if (0 === fseek($this->handle, $offset, $whence)) {
|
|
72
|
+
$this->position = ftell($this->handle);
|
|
73
|
+
return true;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
public function stream_tell()
|
|
80
|
+
{
|
|
81
|
+
return $this->position;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
public function stream_eof()
|
|
85
|
+
{
|
|
86
|
+
return feof($this->handle);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
public function stream_stat()
|
|
90
|
+
{
|
|
91
|
+
return array();
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
public function stream_set_option($option, $arg1, $arg2)
|
|
95
|
+
{
|
|
96
|
+
return true;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
public function url_stat($path, $flags)
|
|
100
|
+
{
|
|
101
|
+
$path = substr($path, 17);
|
|
102
|
+
if (file_exists($path)) {
|
|
103
|
+
return stat($path);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
if (
|
|
112
|
+
(function_exists('stream_get_wrappers') && in_array('phpvfscomposer', stream_get_wrappers(), true))
|
|
113
|
+
|| (function_exists('stream_wrapper_register') && stream_wrapper_register('phpvfscomposer', 'Composer\BinProxyWrapper'))
|
|
114
|
+
) {
|
|
115
|
+
return include("phpvfscomposer://" . __DIR__ . '/..'.'/symfony/var-dumper/Resources/bin/var-dump-server');
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
return include __DIR__ . '/..'.'/symfony/var-dumper/Resources/bin/var-dump-server';
|
|
@@ -42,21 +42,76 @@ namespace Composer\Autoload;
|
|
|
42
42
|
*/
|
|
43
43
|
class ClassLoader
|
|
44
44
|
{
|
|
45
|
+
/** @var \Closure(string):void */
|
|
46
|
+
private static $includeFile;
|
|
47
|
+
|
|
48
|
+
/** @var string|null */
|
|
49
|
+
private $vendorDir;
|
|
50
|
+
|
|
45
51
|
// PSR-4
|
|
52
|
+
/**
|
|
53
|
+
* @var array<string, array<string, int>>
|
|
54
|
+
*/
|
|
46
55
|
private $prefixLengthsPsr4 = array();
|
|
56
|
+
/**
|
|
57
|
+
* @var array<string, list<string>>
|
|
58
|
+
*/
|
|
47
59
|
private $prefixDirsPsr4 = array();
|
|
60
|
+
/**
|
|
61
|
+
* @var list<string>
|
|
62
|
+
*/
|
|
48
63
|
private $fallbackDirsPsr4 = array();
|
|
49
64
|
|
|
50
65
|
// PSR-0
|
|
66
|
+
/**
|
|
67
|
+
* List of PSR-0 prefixes
|
|
68
|
+
*
|
|
69
|
+
* Structured as array('F (first letter)' => array('Foo\Bar (full prefix)' => array('path', 'path2')))
|
|
70
|
+
*
|
|
71
|
+
* @var array<string, array<string, list<string>>>
|
|
72
|
+
*/
|
|
51
73
|
private $prefixesPsr0 = array();
|
|
74
|
+
/**
|
|
75
|
+
* @var list<string>
|
|
76
|
+
*/
|
|
52
77
|
private $fallbackDirsPsr0 = array();
|
|
53
78
|
|
|
79
|
+
/** @var bool */
|
|
54
80
|
private $useIncludePath = false;
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* @var array<string, string>
|
|
84
|
+
*/
|
|
55
85
|
private $classMap = array();
|
|
86
|
+
|
|
87
|
+
/** @var bool */
|
|
56
88
|
private $classMapAuthoritative = false;
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* @var array<string, bool>
|
|
92
|
+
*/
|
|
57
93
|
private $missingClasses = array();
|
|
94
|
+
|
|
95
|
+
/** @var string|null */
|
|
58
96
|
private $apcuPrefix;
|
|
59
97
|
|
|
98
|
+
/**
|
|
99
|
+
* @var array<string, self>
|
|
100
|
+
*/
|
|
101
|
+
private static $registeredLoaders = array();
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* @param string|null $vendorDir
|
|
105
|
+
*/
|
|
106
|
+
public function __construct($vendorDir = null)
|
|
107
|
+
{
|
|
108
|
+
$this->vendorDir = $vendorDir;
|
|
109
|
+
self::initializeIncludeClosure();
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* @return array<string, list<string>>
|
|
114
|
+
*/
|
|
60
115
|
public function getPrefixes()
|
|
61
116
|
{
|
|
62
117
|
if (!empty($this->prefixesPsr0)) {
|
|
@@ -66,28 +121,42 @@ class ClassLoader
|
|
|
66
121
|
return array();
|
|
67
122
|
}
|
|
68
123
|
|
|
124
|
+
/**
|
|
125
|
+
* @return array<string, list<string>>
|
|
126
|
+
*/
|
|
69
127
|
public function getPrefixesPsr4()
|
|
70
128
|
{
|
|
71
129
|
return $this->prefixDirsPsr4;
|
|
72
130
|
}
|
|
73
131
|
|
|
132
|
+
/**
|
|
133
|
+
* @return list<string>
|
|
134
|
+
*/
|
|
74
135
|
public function getFallbackDirs()
|
|
75
136
|
{
|
|
76
137
|
return $this->fallbackDirsPsr0;
|
|
77
138
|
}
|
|
78
139
|
|
|
140
|
+
/**
|
|
141
|
+
* @return list<string>
|
|
142
|
+
*/
|
|
79
143
|
public function getFallbackDirsPsr4()
|
|
80
144
|
{
|
|
81
145
|
return $this->fallbackDirsPsr4;
|
|
82
146
|
}
|
|
83
147
|
|
|
148
|
+
/**
|
|
149
|
+
* @return array<string, string> Array of classname => path
|
|
150
|
+
*/
|
|
84
151
|
public function getClassMap()
|
|
85
152
|
{
|
|
86
153
|
return $this->classMap;
|
|
87
154
|
}
|
|
88
155
|
|
|
89
156
|
/**
|
|
90
|
-
* @param array $classMap Class to filename map
|
|
157
|
+
* @param array<string, string> $classMap Class to filename map
|
|
158
|
+
*
|
|
159
|
+
* @return void
|
|
91
160
|
*/
|
|
92
161
|
public function addClassMap(array $classMap)
|
|
93
162
|
{
|
|
@@ -102,22 +171,25 @@ class ClassLoader
|
|
|
102
171
|
* Registers a set of PSR-0 directories for a given prefix, either
|
|
103
172
|
* appending or prepending to the ones previously set for this prefix.
|
|
104
173
|
*
|
|
105
|
-
* @param string
|
|
106
|
-
* @param
|
|
107
|
-
* @param bool
|
|
174
|
+
* @param string $prefix The prefix
|
|
175
|
+
* @param list<string>|string $paths The PSR-0 root directories
|
|
176
|
+
* @param bool $prepend Whether to prepend the directories
|
|
177
|
+
*
|
|
178
|
+
* @return void
|
|
108
179
|
*/
|
|
109
180
|
public function add($prefix, $paths, $prepend = false)
|
|
110
181
|
{
|
|
182
|
+
$paths = (array) $paths;
|
|
111
183
|
if (!$prefix) {
|
|
112
184
|
if ($prepend) {
|
|
113
185
|
$this->fallbackDirsPsr0 = array_merge(
|
|
114
|
-
|
|
186
|
+
$paths,
|
|
115
187
|
$this->fallbackDirsPsr0
|
|
116
188
|
);
|
|
117
189
|
} else {
|
|
118
190
|
$this->fallbackDirsPsr0 = array_merge(
|
|
119
191
|
$this->fallbackDirsPsr0,
|
|
120
|
-
|
|
192
|
+
$paths
|
|
121
193
|
);
|
|
122
194
|
}
|
|
123
195
|
|
|
@@ -126,19 +198,19 @@ class ClassLoader
|
|
|
126
198
|
|
|
127
199
|
$first = $prefix[0];
|
|
128
200
|
if (!isset($this->prefixesPsr0[$first][$prefix])) {
|
|
129
|
-
$this->prefixesPsr0[$first][$prefix] =
|
|
201
|
+
$this->prefixesPsr0[$first][$prefix] = $paths;
|
|
130
202
|
|
|
131
203
|
return;
|
|
132
204
|
}
|
|
133
205
|
if ($prepend) {
|
|
134
206
|
$this->prefixesPsr0[$first][$prefix] = array_merge(
|
|
135
|
-
|
|
207
|
+
$paths,
|
|
136
208
|
$this->prefixesPsr0[$first][$prefix]
|
|
137
209
|
);
|
|
138
210
|
} else {
|
|
139
211
|
$this->prefixesPsr0[$first][$prefix] = array_merge(
|
|
140
212
|
$this->prefixesPsr0[$first][$prefix],
|
|
141
|
-
|
|
213
|
+
$paths
|
|
142
214
|
);
|
|
143
215
|
}
|
|
144
216
|
}
|
|
@@ -147,25 +219,28 @@ class ClassLoader
|
|
|
147
219
|
* Registers a set of PSR-4 directories for a given namespace, either
|
|
148
220
|
* appending or prepending to the ones previously set for this namespace.
|
|
149
221
|
*
|
|
150
|
-
* @param string
|
|
151
|
-
* @param
|
|
152
|
-
* @param bool
|
|
222
|
+
* @param string $prefix The prefix/namespace, with trailing '\\'
|
|
223
|
+
* @param list<string>|string $paths The PSR-4 base directories
|
|
224
|
+
* @param bool $prepend Whether to prepend the directories
|
|
153
225
|
*
|
|
154
226
|
* @throws \InvalidArgumentException
|
|
227
|
+
*
|
|
228
|
+
* @return void
|
|
155
229
|
*/
|
|
156
230
|
public function addPsr4($prefix, $paths, $prepend = false)
|
|
157
231
|
{
|
|
232
|
+
$paths = (array) $paths;
|
|
158
233
|
if (!$prefix) {
|
|
159
234
|
// Register directories for the root namespace.
|
|
160
235
|
if ($prepend) {
|
|
161
236
|
$this->fallbackDirsPsr4 = array_merge(
|
|
162
|
-
|
|
237
|
+
$paths,
|
|
163
238
|
$this->fallbackDirsPsr4
|
|
164
239
|
);
|
|
165
240
|
} else {
|
|
166
241
|
$this->fallbackDirsPsr4 = array_merge(
|
|
167
242
|
$this->fallbackDirsPsr4,
|
|
168
|
-
|
|
243
|
+
$paths
|
|
169
244
|
);
|
|
170
245
|
}
|
|
171
246
|
} elseif (!isset($this->prefixDirsPsr4[$prefix])) {
|
|
@@ -175,18 +250,18 @@ class ClassLoader
|
|
|
175
250
|
throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
|
|
176
251
|
}
|
|
177
252
|
$this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
|
|
178
|
-
$this->prefixDirsPsr4[$prefix] =
|
|
253
|
+
$this->prefixDirsPsr4[$prefix] = $paths;
|
|
179
254
|
} elseif ($prepend) {
|
|
180
255
|
// Prepend directories for an already registered namespace.
|
|
181
256
|
$this->prefixDirsPsr4[$prefix] = array_merge(
|
|
182
|
-
|
|
257
|
+
$paths,
|
|
183
258
|
$this->prefixDirsPsr4[$prefix]
|
|
184
259
|
);
|
|
185
260
|
} else {
|
|
186
261
|
// Append directories for an already registered namespace.
|
|
187
262
|
$this->prefixDirsPsr4[$prefix] = array_merge(
|
|
188
263
|
$this->prefixDirsPsr4[$prefix],
|
|
189
|
-
|
|
264
|
+
$paths
|
|
190
265
|
);
|
|
191
266
|
}
|
|
192
267
|
}
|
|
@@ -195,8 +270,10 @@ class ClassLoader
|
|
|
195
270
|
* Registers a set of PSR-0 directories for a given prefix,
|
|
196
271
|
* replacing any others previously set for this prefix.
|
|
197
272
|
*
|
|
198
|
-
* @param string
|
|
199
|
-
* @param
|
|
273
|
+
* @param string $prefix The prefix
|
|
274
|
+
* @param list<string>|string $paths The PSR-0 base directories
|
|
275
|
+
*
|
|
276
|
+
* @return void
|
|
200
277
|
*/
|
|
201
278
|
public function set($prefix, $paths)
|
|
202
279
|
{
|
|
@@ -211,10 +288,12 @@ class ClassLoader
|
|
|
211
288
|
* Registers a set of PSR-4 directories for a given namespace,
|
|
212
289
|
* replacing any others previously set for this namespace.
|
|
213
290
|
*
|
|
214
|
-
* @param string
|
|
215
|
-
* @param
|
|
291
|
+
* @param string $prefix The prefix/namespace, with trailing '\\'
|
|
292
|
+
* @param list<string>|string $paths The PSR-4 base directories
|
|
216
293
|
*
|
|
217
294
|
* @throws \InvalidArgumentException
|
|
295
|
+
*
|
|
296
|
+
* @return void
|
|
218
297
|
*/
|
|
219
298
|
public function setPsr4($prefix, $paths)
|
|
220
299
|
{
|
|
@@ -234,6 +313,8 @@ class ClassLoader
|
|
|
234
313
|
* Turns on searching the include path for class files.
|
|
235
314
|
*
|
|
236
315
|
* @param bool $useIncludePath
|
|
316
|
+
*
|
|
317
|
+
* @return void
|
|
237
318
|
*/
|
|
238
319
|
public function setUseIncludePath($useIncludePath)
|
|
239
320
|
{
|
|
@@ -256,6 +337,8 @@ class ClassLoader
|
|
|
256
337
|
* that have not been registered with the class map.
|
|
257
338
|
*
|
|
258
339
|
* @param bool $classMapAuthoritative
|
|
340
|
+
*
|
|
341
|
+
* @return void
|
|
259
342
|
*/
|
|
260
343
|
public function setClassMapAuthoritative($classMapAuthoritative)
|
|
261
344
|
{
|
|
@@ -276,6 +359,8 @@ class ClassLoader
|
|
|
276
359
|
* APCu prefix to use to cache found/not-found classes, if the extension is enabled.
|
|
277
360
|
*
|
|
278
361
|
* @param string|null $apcuPrefix
|
|
362
|
+
*
|
|
363
|
+
* @return void
|
|
279
364
|
*/
|
|
280
365
|
public function setApcuPrefix($apcuPrefix)
|
|
281
366
|
{
|
|
@@ -296,33 +381,55 @@ class ClassLoader
|
|
|
296
381
|
* Registers this instance as an autoloader.
|
|
297
382
|
*
|
|
298
383
|
* @param bool $prepend Whether to prepend the autoloader or not
|
|
384
|
+
*
|
|
385
|
+
* @return void
|
|
299
386
|
*/
|
|
300
387
|
public function register($prepend = false)
|
|
301
388
|
{
|
|
302
389
|
spl_autoload_register(array($this, 'loadClass'), true, $prepend);
|
|
390
|
+
|
|
391
|
+
if (null === $this->vendorDir) {
|
|
392
|
+
return;
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
if ($prepend) {
|
|
396
|
+
self::$registeredLoaders = array($this->vendorDir => $this) + self::$registeredLoaders;
|
|
397
|
+
} else {
|
|
398
|
+
unset(self::$registeredLoaders[$this->vendorDir]);
|
|
399
|
+
self::$registeredLoaders[$this->vendorDir] = $this;
|
|
400
|
+
}
|
|
303
401
|
}
|
|
304
402
|
|
|
305
403
|
/**
|
|
306
404
|
* Unregisters this instance as an autoloader.
|
|
405
|
+
*
|
|
406
|
+
* @return void
|
|
307
407
|
*/
|
|
308
408
|
public function unregister()
|
|
309
409
|
{
|
|
310
410
|
spl_autoload_unregister(array($this, 'loadClass'));
|
|
411
|
+
|
|
412
|
+
if (null !== $this->vendorDir) {
|
|
413
|
+
unset(self::$registeredLoaders[$this->vendorDir]);
|
|
414
|
+
}
|
|
311
415
|
}
|
|
312
416
|
|
|
313
417
|
/**
|
|
314
418
|
* Loads the given class or interface.
|
|
315
419
|
*
|
|
316
420
|
* @param string $class The name of the class
|
|
317
|
-
* @return
|
|
421
|
+
* @return true|null True if loaded, null otherwise
|
|
318
422
|
*/
|
|
319
423
|
public function loadClass($class)
|
|
320
424
|
{
|
|
321
425
|
if ($file = $this->findFile($class)) {
|
|
322
|
-
includeFile
|
|
426
|
+
$includeFile = self::$includeFile;
|
|
427
|
+
$includeFile($file);
|
|
323
428
|
|
|
324
429
|
return true;
|
|
325
430
|
}
|
|
431
|
+
|
|
432
|
+
return null;
|
|
326
433
|
}
|
|
327
434
|
|
|
328
435
|
/**
|
|
@@ -367,6 +474,21 @@ class ClassLoader
|
|
|
367
474
|
return $file;
|
|
368
475
|
}
|
|
369
476
|
|
|
477
|
+
/**
|
|
478
|
+
* Returns the currently registered loaders keyed by their corresponding vendor directories.
|
|
479
|
+
*
|
|
480
|
+
* @return array<string, self>
|
|
481
|
+
*/
|
|
482
|
+
public static function getRegisteredLoaders()
|
|
483
|
+
{
|
|
484
|
+
return self::$registeredLoaders;
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
/**
|
|
488
|
+
* @param string $class
|
|
489
|
+
* @param string $ext
|
|
490
|
+
* @return string|false
|
|
491
|
+
*/
|
|
370
492
|
private function findFileWithExtension($class, $ext)
|
|
371
493
|
{
|
|
372
494
|
// PSR-4 lookup
|
|
@@ -432,14 +554,26 @@ class ClassLoader
|
|
|
432
554
|
|
|
433
555
|
return false;
|
|
434
556
|
}
|
|
435
|
-
}
|
|
436
557
|
|
|
437
|
-
/**
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
558
|
+
/**
|
|
559
|
+
* @return void
|
|
560
|
+
*/
|
|
561
|
+
private static function initializeIncludeClosure()
|
|
562
|
+
{
|
|
563
|
+
if (self::$includeFile !== null) {
|
|
564
|
+
return;
|
|
565
|
+
}
|
|
566
|
+
|
|
567
|
+
/**
|
|
568
|
+
* Scope isolated include.
|
|
569
|
+
*
|
|
570
|
+
* Prevents access to $this/self from included files.
|
|
571
|
+
*
|
|
572
|
+
* @param string $file
|
|
573
|
+
* @return void
|
|
574
|
+
*/
|
|
575
|
+
self::$includeFile = \Closure::bind(static function($file) {
|
|
576
|
+
include $file;
|
|
577
|
+
}, null, null);
|
|
578
|
+
}
|
|
445
579
|
}
|