@flarum/cli 2.0.0-beta.9 → 3.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/LICENSE +1 -1
- package/README.md +178 -48
- package/bin/run +2 -1
- package/bin/splitsh-lite-darwin +0 -0
- package/bin/splitsh-lite-linux +0 -0
- package/boilerplate/skeleton/extension/.gitattributes +16 -14
- package/boilerplate/skeleton/extension/.github/workflows/backend.yml +2 -6
- package/boilerplate/skeleton/extension/.github/workflows/frontend.yml +5 -6
- package/boilerplate/skeleton/extension/.github/workflows/phpstan.yml +12 -0
- package/boilerplate/skeleton/extension/LICENSE.md +1 -1
- package/boilerplate/skeleton/extension/README.md +1 -1
- package/boilerplate/skeleton/extension/composer.json +13 -7
- package/boilerplate/skeleton/extension/extend.php +2 -2
- package/boilerplate/skeleton/extension/gitignore +1 -0
- package/boilerplate/skeleton/extension/js/admin.ts +2 -0
- package/boilerplate/skeleton/extension/js/forum.ts +2 -0
- package/boilerplate/skeleton/extension/js/jest.config.cjs +1 -0
- package/boilerplate/skeleton/extension/js/package.json +11 -4
- package/boilerplate/skeleton/extension/js/src/admin/extend.js +8 -0
- package/boilerplate/skeleton/extension/js/src/admin/extend.ts +8 -0
- package/boilerplate/skeleton/extension/js/src/admin/index.js +2 -0
- package/boilerplate/skeleton/extension/js/src/admin/index.ts +7 -0
- package/boilerplate/skeleton/extension/js/src/common/extend.js +5 -0
- package/boilerplate/skeleton/extension/js/src/common/extend.ts +5 -0
- package/boilerplate/skeleton/extension/js/src/common/index.ts +5 -0
- package/boilerplate/skeleton/extension/js/src/forum/extend.js +8 -0
- package/boilerplate/skeleton/extension/js/src/forum/extend.ts +8 -0
- package/boilerplate/skeleton/extension/js/src/forum/index.js +2 -0
- package/boilerplate/skeleton/extension/js/src/forum/index.ts +7 -0
- package/boilerplate/skeleton/extension/js/tests/unit/.gitkeep +0 -0
- package/boilerplate/skeleton/extension/js/tsconfig.json +10 -2
- package/boilerplate/skeleton/extension/js/tsconfig.test.json +10 -0
- package/boilerplate/skeleton/extension/locale/en.yml +1 -1
- package/boilerplate/skeleton/extension/phpstan.neon +12 -0
- package/boilerplate/skeleton/extension/tests/phpunit.integration.xml +6 -7
- package/boilerplate/skeleton/extension/tests/phpunit.unit.xml +5 -10
- package/boilerplate/stubs/backend/advanced-api-resource.php +85 -0
- package/boilerplate/stubs/backend/api-resource.php +73 -0
- package/boilerplate/stubs/backend/command.php +2 -2
- package/boilerplate/stubs/backend/controller.php +19 -0
- package/boilerplate/stubs/backend/event-listener.php +1 -1
- package/boilerplate/stubs/backend/filter.php +25 -0
- package/boilerplate/stubs/backend/handler/command.php +6 -20
- package/boilerplate/stubs/backend/handler/handler.php +6 -14
- package/boilerplate/stubs/backend/integration-test.php +10 -7
- package/boilerplate/stubs/backend/job.php +6 -11
- package/boilerplate/stubs/backend/mail-driver.php +36 -0
- package/boilerplate/stubs/backend/middleware.php +19 -0
- package/boilerplate/stubs/backend/model.php +1 -1
- package/boilerplate/stubs/backend/notification-blueprint.php +42 -0
- package/boilerplate/stubs/backend/notification-driver.php +32 -0
- package/boilerplate/stubs/backend/policy.php +1 -1
- package/boilerplate/stubs/backend/post-type.php +35 -0
- package/boilerplate/stubs/backend/repository.php +2 -10
- package/boilerplate/stubs/backend/search/driver.php +13 -0
- package/boilerplate/stubs/backend/search/searcher.php +41 -0
- package/boilerplate/stubs/backend/service-provider.php +1 -1
- package/boilerplate/stubs/backend/validator.php +1 -1
- package/boilerplate/stubs/frontend/component.js +1 -1
- package/boilerplate/stubs/frontend/forum-page.js +68 -0
- package/boilerplate/stubs/frontend/gambit/boolean.js +12 -0
- package/boilerplate/stubs/frontend/gambit/key-value.js +16 -0
- package/boilerplate/stubs/frontend/modal.js +1 -1
- package/boilerplate/stubs/frontend/model.js +1 -1
- package/boilerplate/stubs/frontend/notification.js +22 -0
- package/boilerplate/stubs/frontend/post-type.js +13 -0
- package/boilerplate/stubs/migration.php +1 -1
- package/boilerplate/stubs/views/email/html/information.blade.php +8 -0
- package/boilerplate/stubs/views/email/html/notification.blade.php +8 -0
- package/boilerplate/stubs/views/email/plain/information.blade.php +7 -0
- package/boilerplate/stubs/views/email/plain/notification.blade.php +6 -0
- package/lib/base-command.d.ts +22 -6
- package/lib/base-command.js +114 -56
- package/lib/boilersmith/io.d.ts +33 -11
- package/lib/boilersmith/io.js +32 -17
- package/lib/boilersmith/paths.d.ts +3 -3
- package/lib/boilersmith/paths.js +7 -7
- package/lib/boilersmith/scaffolding/audit-step-factory.js +12 -12
- package/lib/boilersmith/scaffolding/infra-step-factory.js +2 -2
- package/lib/boilersmith/scaffolding/init-step-factory.js +5 -5
- package/lib/boilersmith/scaffolding/module.d.ts +30 -10
- package/lib/boilersmith/scaffolding/module.js +61 -19
- package/lib/boilersmith/scaffolding/scaffolder.d.ts +4 -1
- package/lib/boilersmith/scaffolding/scaffolder.js +33 -33
- package/lib/boilersmith/scaffolding/template-param.d.ts +2 -2
- package/lib/boilersmith/scaffolding/template-param.js +2 -2
- package/lib/boilersmith/step-manager.d.ts +15 -11
- package/lib/boilersmith/step-manager.js +45 -29
- package/lib/boilersmith/steps/stub-base.js +4 -4
- package/lib/boilersmith/utils/clone-and-fill.js +1 -1
- package/lib/boilersmith/utils/commit-async.d.ts +2 -0
- package/lib/boilersmith/utils/commit-async.js +15 -0
- package/lib/boilersmith/utils/json-leaf-paths.d.ts +2 -2
- package/lib/boilersmith/utils/read-tpl.js +2 -2
- package/lib/commands/audit/infra.d.ts +2 -5
- package/lib/commands/audit/infra.js +31 -9
- package/lib/commands/infra.d.ts +2 -10
- package/lib/commands/infra.js +20 -14
- package/lib/commands/init.d.ts +2 -5
- package/lib/commands/init.js +7 -5
- package/lib/commands/make/backend/{api-serializer.d.ts → api-resource.d.ts} +2 -5
- package/lib/commands/make/backend/api-resource.js +26 -0
- package/lib/commands/make/backend/command.d.ts +1 -4
- package/lib/commands/make/backend/command.js +3 -4
- package/lib/commands/make/backend/{api-controller.d.ts → controller.d.ts} +2 -5
- package/lib/commands/make/backend/controller.js +31 -0
- package/lib/commands/make/backend/event-listener.d.ts +1 -4
- package/lib/commands/make/backend/event-listener.js +2 -3
- package/lib/commands/make/backend/{api-serializer-attributes.d.ts → filter.d.ts} +3 -6
- package/lib/commands/make/backend/filter.js +26 -0
- package/lib/commands/make/backend/handler.d.ts +2 -5
- package/lib/commands/make/backend/handler.js +8 -11
- package/lib/commands/make/backend/integration-test.d.ts +1 -4
- package/lib/commands/make/backend/integration-test.js +4 -6
- package/lib/commands/make/backend/job.d.ts +1 -4
- package/lib/commands/make/backend/job.js +2 -2
- package/lib/commands/make/backend/mail-driver.d.ts +12 -0
- package/lib/commands/make/backend/mail-driver.js +29 -0
- package/lib/commands/make/backend/middleware.d.ts +11 -0
- package/lib/commands/make/backend/middleware.js +26 -0
- package/lib/commands/make/backend/migration.d.ts +1 -4
- package/lib/commands/make/backend/migration.js +10 -4
- package/lib/commands/make/backend/model.d.ts +6 -7
- package/lib/commands/make/backend/model.js +69 -449
- package/lib/commands/make/backend/notification-blueprint.d.ts +12 -0
- package/lib/commands/make/backend/notification-blueprint.js +29 -0
- package/lib/commands/make/backend/notification-driver.d.ts +12 -0
- package/lib/commands/make/backend/notification-driver.js +29 -0
- package/lib/commands/make/backend/policy.d.ts +1 -4
- package/lib/commands/make/backend/policy.js +2 -3
- package/lib/commands/make/backend/post-type.d.ts +12 -0
- package/lib/commands/make/backend/post-type.js +29 -0
- package/lib/commands/make/backend/repository.d.ts +1 -4
- package/lib/commands/make/backend/repository.js +1 -1
- package/lib/commands/make/backend/route.d.ts +1 -4
- package/lib/commands/make/backend/route.js +2 -3
- package/lib/commands/make/backend/search-driver.d.ts +11 -0
- package/lib/commands/make/backend/search-driver.js +51 -0
- package/lib/commands/make/backend/service-provider.d.ts +1 -4
- package/lib/commands/make/backend/service-provider.js +3 -4
- package/lib/commands/make/backend/validator.d.ts +1 -4
- package/lib/commands/make/backend/validator.js +2 -2
- package/lib/commands/make/frontend/component.d.ts +4 -5
- package/lib/commands/make/frontend/component.js +7 -2
- package/lib/commands/make/frontend/forum-page.d.ts +11 -0
- package/lib/commands/make/frontend/forum-page.js +92 -0
- package/lib/commands/make/frontend/gambit.d.ts +11 -0
- package/lib/commands/make/frontend/gambit.js +30 -0
- package/lib/commands/make/frontend/modal.d.ts +1 -4
- package/lib/commands/make/frontend/modal.js +3 -2
- package/lib/commands/make/frontend/model.d.ts +6 -7
- package/lib/commands/make/frontend/model.js +27 -28
- package/lib/commands/make/frontend/notification.d.ts +12 -0
- package/lib/commands/make/frontend/notification.js +62 -0
- package/lib/commands/make/frontend/post-type.d.ts +12 -0
- package/lib/commands/make/frontend/post-type.js +59 -0
- package/lib/commands/make/locale.d.ts +11 -0
- package/lib/commands/make/locale.js +27 -0
- package/lib/commands/make/model.d.ts +12 -0
- package/lib/commands/make/model.js +29 -0
- package/lib/commands/make/notification.d.ts +11 -0
- package/lib/commands/make/notification.js +33 -0
- package/lib/commands/make/post-type.d.ts +11 -0
- package/lib/commands/make/post-type.js +31 -0
- package/lib/commands/monorepo/create.d.ts +12 -0
- package/lib/commands/monorepo/create.js +20 -0
- package/lib/commands/monorepo/split.d.ts +12 -0
- package/lib/commands/monorepo/split.js +19 -0
- package/lib/commands/update/js-imports.d.ts +1 -4
- package/lib/commands/update/js-imports.js +2 -3
- package/lib/commands/upgrade/2.0.d.ts +17 -0
- package/lib/commands/upgrade/2.0.js +113 -0
- package/lib/help.js +2 -2
- package/lib/providers/php-provider.d.ts +7 -1
- package/lib/providers/php-provider.js +18 -5
- package/lib/steps/extenders/{api-serializer.d.ts → api-resource.d.ts} +1 -1
- package/lib/steps/extenders/api-resource.js +38 -0
- package/lib/steps/extenders/base.d.ts +1 -1
- package/lib/steps/extenders/base.js +13 -1
- package/lib/steps/extenders/console-command.js +1 -1
- package/lib/steps/extenders/event.js +1 -1
- package/lib/steps/extenders/mail-driver.d.ts +5 -0
- package/lib/steps/extenders/mail-driver.js +58 -0
- package/lib/steps/extenders/middleware.d.ts +5 -0
- package/lib/steps/extenders/middleware.js +57 -0
- package/lib/steps/extenders/notification-driver.d.ts +5 -0
- package/lib/steps/extenders/notification-driver.js +58 -0
- package/lib/steps/extenders/notification-type.d.ts +5 -0
- package/lib/steps/extenders/notification-type.js +55 -0
- package/lib/steps/extenders/policy.js +1 -1
- package/lib/steps/extenders/post-type.d.ts +5 -0
- package/lib/steps/extenders/post-type.js +42 -0
- package/lib/steps/extenders/route.js +11 -2
- package/lib/steps/extenders/search-driver.d.ts +5 -0
- package/lib/steps/extenders/search-driver.js +38 -0
- package/lib/steps/extenders/search-filter.d.ts +5 -0
- package/lib/steps/extenders/search-filter.js +67 -0
- package/lib/steps/extenders/service-provider.js +1 -1
- package/lib/steps/gen-ext-scaffolder.d.ts +4 -4
- package/lib/steps/gen-ext-scaffolder.js +262 -56
- package/lib/steps/js/base.d.ts +14 -5
- package/lib/steps/js/base.js +101 -27
- package/lib/steps/js/model.d.ts +4 -7
- package/lib/steps/js/model.js +45 -19
- package/lib/steps/js/notification.d.ts +7 -0
- package/lib/steps/js/notification.js +58 -0
- package/lib/steps/js/post-type.d.ts +8 -0
- package/lib/steps/js/post-type.js +60 -0
- package/lib/steps/js/routes.d.ts +7 -0
- package/lib/steps/js/routes.js +63 -0
- package/lib/steps/js/search-driver-locale.d.ts +8 -0
- package/lib/steps/js/search-driver-locale.js +36 -0
- package/lib/steps/js/search-gambit.d.ts +7 -0
- package/lib/steps/js/search-gambit.js +51 -0
- package/lib/steps/locale/base.d.ts +32 -0
- package/lib/steps/locale/base.js +97 -0
- package/lib/steps/misc/composer.js +2 -2
- package/lib/steps/misc/git.d.ts +1 -1
- package/lib/steps/misc/git.js +3 -3
- package/lib/steps/misc/npm.d.ts +11 -0
- package/lib/steps/misc/npm.js +19 -0
- package/lib/steps/misc/yarn.js +2 -2
- package/lib/steps/monorepo/create.d.ts +19 -0
- package/lib/steps/monorepo/create.js +187 -0
- package/lib/steps/monorepo/split.d.ts +14 -0
- package/lib/steps/monorepo/split.js +99 -0
- package/lib/steps/stubs/backend/advanced-api-resource.d.ts +13 -0
- package/lib/steps/stubs/backend/advanced-api-resource.js +81 -0
- package/lib/steps/stubs/backend/{api-serializer.d.ts → api-resource.d.ts} +2 -2
- package/lib/steps/stubs/backend/{api-serializer.js → api-resource.js} +12 -9
- package/lib/steps/stubs/backend/command.d.ts +2 -21
- package/lib/steps/stubs/backend/command.js +15 -1
- package/lib/steps/stubs/backend/{api-controller.d.ts → controller.d.ts} +4 -14
- package/lib/steps/stubs/backend/controller.js +40 -0
- package/lib/steps/stubs/backend/event-listener.d.ts +1 -1
- package/lib/steps/stubs/backend/event-listener.js +3 -1
- package/lib/steps/stubs/backend/filter.d.ts +8 -0
- package/lib/steps/stubs/backend/filter.js +44 -0
- package/lib/steps/stubs/backend/handler-command.d.ts +2 -27
- package/lib/steps/stubs/backend/handler-command.js +3 -1
- package/lib/steps/stubs/backend/handler.d.ts +1 -1
- package/lib/steps/stubs/backend/handler.js +5 -1
- package/lib/steps/stubs/backend/integration-test.d.ts +1 -1
- package/lib/steps/stubs/backend/integration-test.js +1 -4
- package/lib/steps/stubs/backend/job.d.ts +1 -1
- package/lib/steps/stubs/backend/job.js +1 -0
- package/lib/steps/stubs/backend/mail-driver.d.ts +7 -0
- package/lib/steps/stubs/backend/mail-driver.js +30 -0
- package/lib/steps/stubs/backend/middleware.d.ts +22 -0
- package/lib/steps/stubs/backend/middleware.js +31 -0
- package/lib/steps/stubs/backend/migration.js +6 -3
- package/lib/steps/stubs/backend/model.d.ts +2 -24
- package/lib/steps/stubs/backend/model.js +3 -5
- package/lib/steps/stubs/backend/notification-blueprint.d.ts +7 -0
- package/lib/steps/stubs/backend/notification-blueprint.js +44 -0
- package/lib/steps/stubs/backend/notification-driver.d.ts +7 -0
- package/lib/steps/stubs/backend/notification-driver.js +30 -0
- package/lib/steps/stubs/backend/policy.d.ts +1 -1
- package/lib/steps/stubs/backend/policy.js +3 -1
- package/lib/steps/stubs/backend/post-type.d.ts +7 -0
- package/lib/steps/stubs/backend/post-type.js +44 -0
- package/lib/steps/stubs/backend/repository.d.ts +1 -1
- package/lib/steps/stubs/backend/repository.js +3 -1
- package/lib/steps/stubs/backend/search-driver-searcher.d.ts +24 -0
- package/lib/steps/stubs/backend/search-driver-searcher.js +32 -0
- package/lib/steps/stubs/backend/search-driver.d.ts +8 -0
- package/lib/steps/stubs/backend/search-driver.js +49 -0
- package/lib/steps/stubs/backend/service-provider.d.ts +1 -1
- package/lib/steps/stubs/backend/service-provider.js +1 -0
- package/lib/steps/stubs/backend/validator.d.ts +1 -1
- package/lib/steps/stubs/backend/validator.js +1 -0
- package/lib/steps/stubs/flarum-base.js +1 -1
- package/lib/steps/stubs/frontend/component.d.ts +0 -5
- package/lib/steps/stubs/frontend/component.js +1 -0
- package/lib/steps/stubs/frontend/forum-page.d.ts +25 -0
- package/lib/steps/stubs/frontend/forum-page.js +37 -0
- package/lib/steps/stubs/frontend/gambit.d.ts +7 -0
- package/lib/steps/stubs/frontend/gambit.js +50 -0
- package/lib/steps/stubs/frontend/modal.d.ts +0 -5
- package/lib/steps/stubs/frontend/modal.js +1 -0
- package/lib/steps/stubs/frontend/model.d.ts +8 -1
- package/lib/steps/stubs/frontend/model.js +6 -0
- package/lib/steps/stubs/frontend/notification.d.ts +11 -0
- package/lib/steps/stubs/frontend/notification.js +48 -0
- package/lib/steps/stubs/frontend/post-type.d.ts +11 -0
- package/lib/steps/stubs/frontend/post-type.js +48 -0
- package/lib/steps/stubs/js-base.js +12 -5
- package/lib/steps/stubs/php-base.js +13 -9
- package/lib/steps/update/js-imports.js +9 -3
- package/lib/steps/upgrade/twopointoh/backend/email-views.d.ts +18 -0
- package/lib/steps/upgrade/twopointoh/backend/email-views.js +81 -0
- package/lib/steps/upgrade/twopointoh/backend/filesystem.d.ts +8 -0
- package/lib/steps/upgrade/twopointoh/backend/filesystem.js +40 -0
- package/lib/steps/upgrade/twopointoh/backend/intervention-image.d.ts +8 -0
- package/lib/steps/upgrade/twopointoh/backend/intervention-image.js +44 -0
- package/lib/steps/upgrade/twopointoh/backend/json-api.d.ts +12 -0
- package/lib/steps/upgrade/twopointoh/backend/json-api.js +111 -0
- package/lib/steps/upgrade/twopointoh/backend/mailer.d.ts +8 -0
- package/lib/steps/upgrade/twopointoh/backend/mailer.js +37 -0
- package/lib/steps/upgrade/twopointoh/backend/misc.d.ts +8 -0
- package/lib/steps/upgrade/twopointoh/backend/misc.js +42 -0
- package/lib/steps/upgrade/twopointoh/backend/phpunit.d.ts +8 -0
- package/lib/steps/upgrade/twopointoh/backend/phpunit.js +52 -0
- package/lib/steps/upgrade/twopointoh/backend/search.d.ts +28 -0
- package/lib/steps/upgrade/twopointoh/backend/search.js +200 -0
- package/lib/steps/upgrade/twopointoh/base.d.ts +58 -0
- package/lib/steps/upgrade/twopointoh/base.js +284 -0
- package/lib/steps/upgrade/twopointoh/dependencies.d.ts +10 -0
- package/lib/steps/upgrade/twopointoh/dependencies.js +108 -0
- package/lib/steps/upgrade/twopointoh/frontend/code-splitting/usage-of-lazy-modules.d.ts +26 -0
- package/lib/steps/upgrade/twopointoh/frontend/code-splitting/usage-of-lazy-modules.js +418 -0
- package/lib/steps/upgrade/twopointoh/frontend/export-registry/compat.d.ts +12 -0
- package/lib/steps/upgrade/twopointoh/frontend/export-registry/compat.js +75 -0
- package/lib/steps/upgrade/twopointoh/frontend/export-registry/import-ext.d.ts +13 -0
- package/lib/steps/upgrade/twopointoh/frontend/export-registry/import-ext.js +126 -0
- package/lib/steps/upgrade/twopointoh/frontend/format.d.ts +8 -0
- package/lib/steps/upgrade/twopointoh/frontend/format.js +32 -0
- package/lib/steps/upgrade/twopointoh/frontend/misc.d.ts +17 -0
- package/lib/steps/upgrade/twopointoh/frontend/misc.js +433 -0
- package/lib/steps/upgrade/twopointoh/infra.d.ts +10 -0
- package/lib/steps/upgrade/twopointoh/infra.js +51 -0
- package/lib/steps/upgrade/twopointoh/less.d.ts +12 -0
- package/lib/steps/upgrade/twopointoh/less.js +217 -0
- package/lib/utils/add-extenders.d.ts +2 -0
- package/lib/utils/add-extenders.js +115 -0
- package/lib/utils/ast.d.ts +22 -0
- package/lib/utils/ast.js +235 -0
- package/lib/utils/composer.d.ts +2 -1
- package/lib/utils/migration.js +3 -1
- package/lib/utils/model-name.d.ts +1 -0
- package/lib/utils/model-name.js +7 -3
- package/lib/utils/monorepo.d.ts +24 -0
- package/lib/utils/monorepo.js +24 -0
- package/lib/utils/validation.d.ts +6 -1
- package/lib/utils/validation.js +15 -0
- package/oclif.manifest.json +1 -1
- package/package.json +27 -14
- package/php-subsystem/composer.json +11 -9
- package/php-subsystem/composer.lock +66 -71
- package/php-subsystem/index.php +41 -6
- package/php-subsystem/src/CustomPrettyPrinter.php +1 -1
- package/php-subsystem/src/ExtenderUtil.php +7 -13
- package/php-subsystem/src/NodeUtil.php +72 -0
- package/php-subsystem/src/NodeVisitors/AddExtender.php +28 -12
- package/php-subsystem/src/NodeVisitors/AddUses.php +24 -0
- package/php-subsystem/src/NodeVisitors/ChangeSignatures.php +200 -0
- package/php-subsystem/src/NodeVisitors/ReplaceUses.php +175 -0
- package/php-subsystem/src/Upgrade/Replacement.php +51 -0
- package/php-subsystem/src/Upgrade/ReplacementResult.php +17 -0
- package/php-subsystem/src/Upgrade/TwoPointOh/EmailViews.php +94 -0
- package/php-subsystem/src/Upgrade/TwoPointOh/Filesystem.php +88 -0
- package/php-subsystem/src/Upgrade/TwoPointOh/InterventionImage.php +86 -0
- package/php-subsystem/src/Upgrade/TwoPointOh/JsonApi.php +186 -0
- package/php-subsystem/src/Upgrade/TwoPointOh/Misc.php +564 -0
- package/php-subsystem/src/Upgrade/TwoPointOh/PhpUnit.php +241 -0
- package/php-subsystem/src/Upgrade/TwoPointOh/Search.php +589 -0
- package/php-subsystem/vendor/autoload.php +18 -0
- package/php-subsystem/vendor/bin/php-parse +119 -0
- package/php-subsystem/vendor/composer/ClassLoader.php +166 -32
- package/php-subsystem/vendor/composer/InstalledVersions.php +350 -209
- package/php-subsystem/vendor/composer/autoload_classmap.php +1 -1
- package/php-subsystem/vendor/composer/autoload_namespaces.php +1 -1
- package/php-subsystem/vendor/composer/autoload_psr4.php +1 -1
- package/php-subsystem/vendor/composer/autoload_real.php +3 -22
- package/php-subsystem/vendor/composer/installed.json +56 -61
- package/php-subsystem/vendor/composer/installed.php +29 -30
- package/php-subsystem/vendor/composer/platform_check.php +2 -2
- package/php-subsystem/vendor/nikic/php-parser/README.md +21 -13
- package/php-subsystem/vendor/nikic/php-parser/bin/php-parse +12 -11
- package/php-subsystem/vendor/nikic/php-parser/composer.json +41 -39
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/ClassConst.php +58 -11
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/Class_.php +54 -25
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/Declaration.php +11 -4
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/EnumCase.php +87 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/Enum_.php +116 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/FunctionLike.php +8 -9
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/Function_.php +22 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/Interface_.php +26 -7
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/Method.php +31 -13
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/Namespace_.php +5 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/Param.php +69 -26
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/Property.php +47 -18
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/TraitUse.php +6 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/TraitUseAdaptation.php +25 -28
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/Trait_.php +31 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder/Use_.php +8 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Builder.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/BuilderFactory.php +85 -70
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/BuilderHelpers.php +119 -71
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Comment/Doc.php +1 -2
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Comment.php +35 -67
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/ConstExprEvaluationException.php +3 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/ConstExprEvaluator.php +17 -9
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Error.php +24 -33
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/ErrorHandler/Collecting.php +6 -9
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/ErrorHandler/Throwing.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/ErrorHandler.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Internal/DiffElem.php +11 -7
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Internal/Differ.php +36 -22
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Internal/PrintableNewAnonClassNode.php +24 -14
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Internal/TokenPolyfill.php +237 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Internal/TokenStream.php +63 -69
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/JsonDecoder.php +15 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/Emulative.php +74 -92
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/AttributeEmulator.php +11 -18
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/EnumTokenEmulator.php +10 -15
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ExplicitOctalEmulator.php +45 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/KeywordEmulator.php +19 -25
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/MatchTokenEmulator.php +6 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/NullsafeTokenEmulator.php +22 -29
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReadonlyFunctionTokenEmulator.php +31 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReadonlyTokenEmulator.php +31 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/ReverseEmulator.php +6 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/TokenEmulator.php +10 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer.php +70 -491
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Modifiers.php +69 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NameContext.php +23 -24
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Arg.php +13 -14
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/ArrayItem.php +43 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Attribute.php +9 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/AttributeGroup.php +5 -7
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/ClosureUse.php +36 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/ComplexType.php +13 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Const_.php +12 -13
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/DeclareItem.php +37 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ArrayDimFetch.php +10 -11
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ArrayItem.php +1 -39
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Array_.php +11 -11
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ArrowFunction.php +35 -30
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Assign.php +9 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseAnd.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseOr.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/BitwiseXor.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Coalesce.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Concat.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Div.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Minus.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Mod.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Mul.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Plus.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/Pow.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/ShiftLeft.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp/ShiftRight.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignOp.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/AssignRef.php +9 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseAnd.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseOr.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BitwiseXor.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BooleanAnd.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/BooleanOr.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Coalesce.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Concat.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Div.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Equal.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Greater.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/GreaterOrEqual.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Identical.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalAnd.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalOr.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/LogicalXor.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Minus.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Mod.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Mul.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/NotEqual.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/NotIdentical.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Plus.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Pow.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/ShiftLeft.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/ShiftRight.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Smaller.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/SmallerOrEqual.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp/Spaceship.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BinaryOp.php +8 -11
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BitwiseNot.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/BooleanNot.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/CallLike.php +35 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Array_.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Bool_.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Double.php +5 -6
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Int_.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Object_.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/String_.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast/Unset_.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Cast.php +5 -6
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ClassConstFetch.php +12 -12
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Clone_.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Closure.php +34 -27
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ClosureUse.php +1 -32
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ConstFetch.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Empty_.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Error.php +5 -6
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ErrorSuppress.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Eval_.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Exit_.php +10 -11
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/FuncCall.php +15 -12
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Include_.php +13 -14
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Instanceof_.php +11 -11
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Isset_.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/List_.php +12 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Match_.php +8 -7
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/MethodCall.php +18 -13
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/New_.php +17 -12
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/NullsafeMethodCall.php +18 -13
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/NullsafePropertyFetch.php +10 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/PostDec.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/PostInc.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/PreDec.php +6 -7
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/PreInc.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Print_.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/PropertyFetch.php +10 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/ShellExec.php +9 -9
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/StaticCall.php +19 -14
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/StaticPropertyFetch.php +11 -11
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Ternary.php +12 -13
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Throw_.php +6 -7
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/UnaryMinus.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/UnaryPlus.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Variable.php +6 -7
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/YieldFrom.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr/Yield_.php +10 -11
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Expr.php +1 -2
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/FunctionLike.php +6 -9
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Identifier.php +13 -13
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/InterpolatedStringPart.php +32 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/IntersectionType.php +27 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/MatchArm.php +8 -9
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Name/FullyQualified.php +8 -9
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Name/Relative.php +8 -9
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Name.php +80 -53
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/NullableType.php +10 -11
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Param.php +47 -23
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/PropertyItem.php +37 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/DNumber.php +1 -68
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/Encapsed.php +1 -29
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/EncapsedStringPart.php +1 -28
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/Float_.php +78 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/Int_.php +82 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/InterpolatedString.php +34 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/LNumber.php +1 -71
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Class_.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Dir.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/File.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Function_.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Line.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Method.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Namespace_.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst/Trait_.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/MagicConst.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/String_.php +44 -24
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar.php +1 -2
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/StaticVar.php +39 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Block.php +29 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Break_.php +8 -9
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Case_.php +10 -11
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Catch_.php +11 -12
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassConst.php +33 -27
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassLike.php +15 -15
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/ClassMethod.php +66 -71
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Class_.php +48 -61
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Const_.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Continue_.php +8 -9
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/DeclareDeclare.php +1 -32
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Declare_.php +12 -12
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Do_.php +9 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Echo_.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/ElseIf_.php +9 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Else_.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/EnumCase.php +11 -12
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Enum_.php +17 -13
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Expression.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Finally_.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/For_.php +19 -15
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Foreach_.php +20 -17
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Function_.php +31 -27
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Global_.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Goto_.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/GroupUse.php +16 -14
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/HaltCompiler.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/If_.php +18 -15
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/InlineHTML.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Interface_.php +13 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Label.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Namespace_.php +11 -12
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Nop.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Property.php +35 -36
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/PropertyProperty.php +1 -32
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Return_.php +8 -9
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/StaticVar.php +1 -35
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Static_.php +8 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Switch_.php +9 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUse.php +8 -9
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation/Alias.php +12 -13
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation/Precedence.php +9 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/TraitUseAdaptation.php +3 -4
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Trait_.php +10 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/TryCatch.php +11 -12
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Unset_.php +7 -8
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/UseUse.php +1 -50
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Use_.php +16 -16
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/While_.php +9 -10
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt.php +1 -2
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/UnionType.php +8 -11
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/UseItem.php +55 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/VarLikeIdentifier.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/VariadicPlaceholder.php +27 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node.php +24 -29
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeAbstract.php +20 -20
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeDumper.php +169 -82
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeFinder.php +28 -19
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php +71 -84
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeTraverserInterface.php +4 -7
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/CloningVisitor.php +1 -2
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/CommentAnnotatingVisitor.php +82 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/FindingVisitor.php +4 -5
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/FirstFindingVisitor.php +6 -7
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/NameResolver.php +40 -24
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/NodeConnectingVisitor.php +2 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor/ParentConnectingVisitor.php +8 -11
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeVisitor.php +59 -7
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/NodeVisitorAbstract.php +1 -2
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Parser/Php7.php +2011 -2058
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Parser/Php8.php +2717 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Parser.php +9 -3
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/ParserAbstract.php +466 -248
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/ParserFactory.php +31 -33
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/PhpVersion.php +164 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/PrettyPrinter/Standard.php +419 -338
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/PrettyPrinter.php +51 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/PrettyPrinterAbstract.php +587 -431
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Token.php +18 -0
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/compatibility_tokens.php +63 -0
- package/boilerplate/stubs/backend/api-controller/create.php +0 -53
- package/boilerplate/stubs/backend/api-controller/delete.php +0 -52
- package/boilerplate/stubs/backend/api-controller/list.php +0 -61
- package/boilerplate/stubs/backend/api-controller/normal.php +0 -29
- package/boilerplate/stubs/backend/api-controller/show.php +0 -48
- package/boilerplate/stubs/backend/api-controller/update.php +0 -54
- package/boilerplate/stubs/backend/api-serializer.php +0 -36
- package/lib/commands/make/backend/api-controller.js +0 -27
- package/lib/commands/make/backend/api-serializer-attributes.js +0 -15
- package/lib/commands/make/backend/api-serializer.js +0 -15
- package/lib/steps/extenders/api-serializer.js +0 -77
- package/lib/steps/stubs/backend/api-controller.js +0 -62
- package/lib/steps/stubs/frontend/migration.js +0 -1
- package/php-subsystem/vendor/nikic/php-parser/.editorconfig +0 -9
- package/php-subsystem/vendor/nikic/php-parser/grammar/README.md +0 -30
- package/php-subsystem/vendor/nikic/php-parser/grammar/parser.template +0 -106
- package/php-subsystem/vendor/nikic/php-parser/grammar/php5.y +0 -1026
- package/php-subsystem/vendor/nikic/php-parser/grammar/php7.y +0 -1152
- package/php-subsystem/vendor/nikic/php-parser/grammar/phpyLang.php +0 -192
- package/php-subsystem/vendor/nikic/php-parser/grammar/rebuildParsers.php +0 -81
- package/php-subsystem/vendor/nikic/php-parser/grammar/tokens.template +0 -17
- package/php-subsystem/vendor/nikic/php-parser/grammar/tokens.y +0 -115
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/CoaleseEqualTokenEmulator.php +0 -47
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/FlexibleDocStringEmulator.php +0 -76
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/FnTokenEmulator.php +0 -23
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/NumericLiteralSeparatorEmulator.php +0 -105
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Throw_.php +0 -30
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Parser/Multiple.php +0 -55
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Parser/Php5.php +0 -2630
- package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Parser/Tokens.php +0 -145
- /package/{lib/steps/stubs/frontend/migration.d.ts → boilerplate/skeleton/extension/js/tests/integration/.gitkeep} +0 -0
- /package/boilerplate/skeleton/extension/js/{webpack.config.js → webpack.config.cjs} +0 -0
|
@@ -4,12 +4,12 @@ namespace PhpParser\Node;
|
|
|
4
4
|
|
|
5
5
|
use PhpParser\NodeAbstract;
|
|
6
6
|
|
|
7
|
-
class Name extends NodeAbstract
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
public $parts;
|
|
7
|
+
class Name extends NodeAbstract {
|
|
8
|
+
/** @var string Name as string */
|
|
9
|
+
public string $name;
|
|
11
10
|
|
|
12
|
-
|
|
11
|
+
/** @var array<string, bool> */
|
|
12
|
+
private static array $specialClassNames = [
|
|
13
13
|
'self' => true,
|
|
14
14
|
'parent' => true,
|
|
15
15
|
'static' => true,
|
|
@@ -18,16 +18,25 @@ class Name extends NodeAbstract
|
|
|
18
18
|
/**
|
|
19
19
|
* Constructs a name node.
|
|
20
20
|
*
|
|
21
|
-
* @param string|string[]|self $name
|
|
22
|
-
* @param array
|
|
21
|
+
* @param string|string[]|self $name Name as string, part array or Name instance (copy ctor)
|
|
22
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
23
23
|
*/
|
|
24
|
-
public function __construct($name, array $attributes = []) {
|
|
24
|
+
final public function __construct($name, array $attributes = []) {
|
|
25
25
|
$this->attributes = $attributes;
|
|
26
|
-
$this->
|
|
26
|
+
$this->name = self::prepareName($name);
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
public function getSubNodeNames()
|
|
30
|
-
return ['
|
|
29
|
+
public function getSubNodeNames(): array {
|
|
30
|
+
return ['name'];
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Get parts of name (split by the namespace separator).
|
|
35
|
+
*
|
|
36
|
+
* @return string[] Parts of name
|
|
37
|
+
*/
|
|
38
|
+
public function getParts(): array {
|
|
39
|
+
return \explode('\\', $this->name);
|
|
31
40
|
}
|
|
32
41
|
|
|
33
42
|
/**
|
|
@@ -35,8 +44,11 @@ class Name extends NodeAbstract
|
|
|
35
44
|
*
|
|
36
45
|
* @return string First part of the name
|
|
37
46
|
*/
|
|
38
|
-
public function getFirst()
|
|
39
|
-
|
|
47
|
+
public function getFirst(): string {
|
|
48
|
+
if (false !== $pos = \strpos($this->name, '\\')) {
|
|
49
|
+
return \substr($this->name, 0, $pos);
|
|
50
|
+
}
|
|
51
|
+
return $this->name;
|
|
40
52
|
}
|
|
41
53
|
|
|
42
54
|
/**
|
|
@@ -44,8 +56,11 @@ class Name extends NodeAbstract
|
|
|
44
56
|
*
|
|
45
57
|
* @return string Last part of the name
|
|
46
58
|
*/
|
|
47
|
-
public function getLast()
|
|
48
|
-
|
|
59
|
+
public function getLast(): string {
|
|
60
|
+
if (false !== $pos = \strrpos($this->name, '\\')) {
|
|
61
|
+
return \substr($this->name, $pos + 1);
|
|
62
|
+
}
|
|
63
|
+
return $this->name;
|
|
49
64
|
}
|
|
50
65
|
|
|
51
66
|
/**
|
|
@@ -53,8 +68,8 @@ class Name extends NodeAbstract
|
|
|
53
68
|
*
|
|
54
69
|
* @return bool Whether the name is unqualified
|
|
55
70
|
*/
|
|
56
|
-
public function isUnqualified()
|
|
57
|
-
return
|
|
71
|
+
public function isUnqualified(): bool {
|
|
72
|
+
return false === \strpos($this->name, '\\');
|
|
58
73
|
}
|
|
59
74
|
|
|
60
75
|
/**
|
|
@@ -62,8 +77,8 @@ class Name extends NodeAbstract
|
|
|
62
77
|
*
|
|
63
78
|
* @return bool Whether the name is qualified
|
|
64
79
|
*/
|
|
65
|
-
public function isQualified()
|
|
66
|
-
return
|
|
80
|
+
public function isQualified(): bool {
|
|
81
|
+
return false !== \strpos($this->name, '\\');
|
|
67
82
|
}
|
|
68
83
|
|
|
69
84
|
/**
|
|
@@ -71,7 +86,7 @@ class Name extends NodeAbstract
|
|
|
71
86
|
*
|
|
72
87
|
* @return bool Whether the name is fully qualified
|
|
73
88
|
*/
|
|
74
|
-
public function isFullyQualified()
|
|
89
|
+
public function isFullyQualified(): bool {
|
|
75
90
|
return false;
|
|
76
91
|
}
|
|
77
92
|
|
|
@@ -80,7 +95,7 @@ class Name extends NodeAbstract
|
|
|
80
95
|
*
|
|
81
96
|
* @return bool Whether the name is relative
|
|
82
97
|
*/
|
|
83
|
-
public function isRelative()
|
|
98
|
+
public function isRelative(): bool {
|
|
84
99
|
return false;
|
|
85
100
|
}
|
|
86
101
|
|
|
@@ -90,8 +105,8 @@ class Name extends NodeAbstract
|
|
|
90
105
|
*
|
|
91
106
|
* @return string String representation
|
|
92
107
|
*/
|
|
93
|
-
public function toString()
|
|
94
|
-
return
|
|
108
|
+
public function toString(): string {
|
|
109
|
+
return $this->name;
|
|
95
110
|
}
|
|
96
111
|
|
|
97
112
|
/**
|
|
@@ -100,7 +115,7 @@ class Name extends NodeAbstract
|
|
|
100
115
|
*
|
|
101
116
|
* @return string String representation
|
|
102
117
|
*/
|
|
103
|
-
public function toCodeString()
|
|
118
|
+
public function toCodeString(): string {
|
|
104
119
|
return $this->toString();
|
|
105
120
|
}
|
|
106
121
|
|
|
@@ -110,8 +125,8 @@ class Name extends NodeAbstract
|
|
|
110
125
|
*
|
|
111
126
|
* @return string Lowercased string representation
|
|
112
127
|
*/
|
|
113
|
-
public function toLowerString()
|
|
114
|
-
return strtolower(
|
|
128
|
+
public function toLowerString(): string {
|
|
129
|
+
return strtolower($this->name);
|
|
115
130
|
}
|
|
116
131
|
|
|
117
132
|
/**
|
|
@@ -119,9 +134,8 @@ class Name extends NodeAbstract
|
|
|
119
134
|
*
|
|
120
135
|
* @return bool Whether identifier is a special class name
|
|
121
136
|
*/
|
|
122
|
-
public function isSpecialClassName()
|
|
123
|
-
return
|
|
124
|
-
&& isset(self::$specialClassNames[strtolower($this->parts[0])]);
|
|
137
|
+
public function isSpecialClassName(): bool {
|
|
138
|
+
return isset(self::$specialClassNames[strtolower($this->name)]);
|
|
125
139
|
}
|
|
126
140
|
|
|
127
141
|
/**
|
|
@@ -130,8 +144,8 @@ class Name extends NodeAbstract
|
|
|
130
144
|
*
|
|
131
145
|
* @return string String representation
|
|
132
146
|
*/
|
|
133
|
-
public function __toString()
|
|
134
|
-
return
|
|
147
|
+
public function __toString(): string {
|
|
148
|
+
return $this->name;
|
|
135
149
|
}
|
|
136
150
|
|
|
137
151
|
/**
|
|
@@ -145,13 +159,22 @@ class Name extends NodeAbstract
|
|
|
145
159
|
*
|
|
146
160
|
* Offset and length have the same meaning as in array_slice().
|
|
147
161
|
*
|
|
148
|
-
* @param int
|
|
162
|
+
* @param int $offset Offset to start the slice at (may be negative)
|
|
149
163
|
* @param int|null $length Length of the slice (may be negative)
|
|
150
164
|
*
|
|
151
165
|
* @return static|null Sliced name
|
|
152
166
|
*/
|
|
153
|
-
public function slice(int $offset, int $length = null) {
|
|
154
|
-
$
|
|
167
|
+
public function slice(int $offset, ?int $length = null) {
|
|
168
|
+
if ($offset === 1 && $length === null) {
|
|
169
|
+
// Short-circuit the common case.
|
|
170
|
+
if (false !== $pos = \strpos($this->name, '\\')) {
|
|
171
|
+
return new static(\substr($this->name, $pos + 1));
|
|
172
|
+
}
|
|
173
|
+
return null;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
$parts = \explode('\\', $this->name);
|
|
177
|
+
$numParts = \count($parts);
|
|
155
178
|
|
|
156
179
|
$realOffset = $offset < 0 ? $offset + $numParts : $offset;
|
|
157
180
|
if ($realOffset < 0 || $realOffset > $numParts) {
|
|
@@ -162,7 +185,7 @@ class Name extends NodeAbstract
|
|
|
162
185
|
$realLength = $numParts - $realOffset;
|
|
163
186
|
} else {
|
|
164
187
|
$realLength = $length < 0 ? $length + $numParts - $realOffset : $length;
|
|
165
|
-
if ($realLength < 0 || $realLength > $numParts) {
|
|
188
|
+
if ($realLength < 0 || $realLength > $numParts - $realOffset) {
|
|
166
189
|
throw new \OutOfBoundsException(sprintf('Length %d is out of bounds', $length));
|
|
167
190
|
}
|
|
168
191
|
}
|
|
@@ -172,7 +195,7 @@ class Name extends NodeAbstract
|
|
|
172
195
|
return null;
|
|
173
196
|
}
|
|
174
197
|
|
|
175
|
-
return new static(array_slice($
|
|
198
|
+
return new static(array_slice($parts, $realOffset, $realLength), $this->attributes);
|
|
176
199
|
}
|
|
177
200
|
|
|
178
201
|
/**
|
|
@@ -186,49 +209,53 @@ class Name extends NodeAbstract
|
|
|
186
209
|
* Name::concat($namespace, $shortName)
|
|
187
210
|
* where $namespace is a Name node or null will work as expected.
|
|
188
211
|
*
|
|
189
|
-
* @param string|string[]|self|null $name1
|
|
190
|
-
* @param string|string[]|self|null $name2
|
|
191
|
-
* @param array
|
|
212
|
+
* @param string|string[]|self|null $name1 The first name
|
|
213
|
+
* @param string|string[]|self|null $name2 The second name
|
|
214
|
+
* @param array<string, mixed> $attributes Attributes to assign to concatenated name
|
|
192
215
|
*
|
|
193
216
|
* @return static|null Concatenated name
|
|
194
217
|
*/
|
|
195
218
|
public static function concat($name1, $name2, array $attributes = []) {
|
|
196
219
|
if (null === $name1 && null === $name2) {
|
|
197
220
|
return null;
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
221
|
+
}
|
|
222
|
+
if (null === $name1) {
|
|
223
|
+
return new static($name2, $attributes);
|
|
224
|
+
}
|
|
225
|
+
if (null === $name2) {
|
|
226
|
+
return new static($name1, $attributes);
|
|
202
227
|
} else {
|
|
203
228
|
return new static(
|
|
204
|
-
|
|
229
|
+
self::prepareName($name1) . '\\' . self::prepareName($name2), $attributes
|
|
205
230
|
);
|
|
206
231
|
}
|
|
207
232
|
}
|
|
208
233
|
|
|
209
234
|
/**
|
|
210
235
|
* Prepares a (string, array or Name node) name for use in name changing methods by converting
|
|
211
|
-
* it to
|
|
236
|
+
* it to a string.
|
|
212
237
|
*
|
|
213
238
|
* @param string|string[]|self $name Name to prepare
|
|
214
239
|
*
|
|
215
|
-
* @return string
|
|
240
|
+
* @return string Prepared name
|
|
216
241
|
*/
|
|
217
|
-
private static function prepareName($name)
|
|
242
|
+
private static function prepareName($name): string {
|
|
218
243
|
if (\is_string($name)) {
|
|
219
244
|
if ('' === $name) {
|
|
220
245
|
throw new \InvalidArgumentException('Name cannot be empty');
|
|
221
246
|
}
|
|
222
247
|
|
|
223
|
-
return
|
|
224
|
-
}
|
|
248
|
+
return $name;
|
|
249
|
+
}
|
|
250
|
+
if (\is_array($name)) {
|
|
225
251
|
if (empty($name)) {
|
|
226
252
|
throw new \InvalidArgumentException('Name cannot be empty');
|
|
227
253
|
}
|
|
228
254
|
|
|
229
|
-
return $name;
|
|
230
|
-
}
|
|
231
|
-
|
|
255
|
+
return implode('\\', $name);
|
|
256
|
+
}
|
|
257
|
+
if ($name instanceof self) {
|
|
258
|
+
return $name->name;
|
|
232
259
|
}
|
|
233
260
|
|
|
234
261
|
throw new \InvalidArgumentException(
|
|
@@ -236,7 +263,7 @@ class Name extends NodeAbstract
|
|
|
236
263
|
);
|
|
237
264
|
}
|
|
238
265
|
|
|
239
|
-
public function getType()
|
|
266
|
+
public function getType(): string {
|
|
240
267
|
return 'Name';
|
|
241
268
|
}
|
|
242
269
|
}
|
|
@@ -2,29 +2,28 @@
|
|
|
2
2
|
|
|
3
3
|
namespace PhpParser\Node;
|
|
4
4
|
|
|
5
|
-
use PhpParser\
|
|
5
|
+
use PhpParser\Node;
|
|
6
6
|
|
|
7
|
-
class NullableType extends
|
|
8
|
-
{
|
|
7
|
+
class NullableType extends ComplexType {
|
|
9
8
|
/** @var Identifier|Name Type */
|
|
10
|
-
public $type;
|
|
9
|
+
public Node $type;
|
|
11
10
|
|
|
12
11
|
/**
|
|
13
12
|
* Constructs a nullable type (wrapping another type).
|
|
14
13
|
*
|
|
15
|
-
* @param
|
|
16
|
-
* @param array
|
|
14
|
+
* @param Identifier|Name $type Type
|
|
15
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
17
16
|
*/
|
|
18
|
-
public function __construct($type, array $attributes = []) {
|
|
17
|
+
public function __construct(Node $type, array $attributes = []) {
|
|
19
18
|
$this->attributes = $attributes;
|
|
20
|
-
$this->type =
|
|
19
|
+
$this->type = $type;
|
|
21
20
|
}
|
|
22
21
|
|
|
23
|
-
public function getSubNodeNames()
|
|
22
|
+
public function getSubNodeNames(): array {
|
|
24
23
|
return ['type'];
|
|
25
24
|
}
|
|
26
|
-
|
|
27
|
-
public function getType()
|
|
25
|
+
|
|
26
|
+
public function getType(): string {
|
|
28
27
|
return 'NullableType';
|
|
29
28
|
}
|
|
30
29
|
}
|
|
@@ -2,46 +2,47 @@
|
|
|
2
2
|
|
|
3
3
|
namespace PhpParser\Node;
|
|
4
4
|
|
|
5
|
+
use PhpParser\Modifiers;
|
|
6
|
+
use PhpParser\Node;
|
|
5
7
|
use PhpParser\NodeAbstract;
|
|
6
8
|
|
|
7
|
-
class Param extends NodeAbstract
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
public $type;
|
|
9
|
+
class Param extends NodeAbstract {
|
|
10
|
+
/** @var null|Identifier|Name|ComplexType Type declaration */
|
|
11
|
+
public ?Node $type;
|
|
11
12
|
/** @var bool Whether parameter is passed by reference */
|
|
12
|
-
public $byRef;
|
|
13
|
+
public bool $byRef;
|
|
13
14
|
/** @var bool Whether this is a variadic argument */
|
|
14
|
-
public $variadic;
|
|
15
|
+
public bool $variadic;
|
|
15
16
|
/** @var Expr\Variable|Expr\Error Parameter variable */
|
|
16
|
-
public $var;
|
|
17
|
+
public Expr $var;
|
|
17
18
|
/** @var null|Expr Default value */
|
|
18
|
-
public $default;
|
|
19
|
-
/** @var int */
|
|
20
|
-
public $flags;
|
|
19
|
+
public ?Expr $default;
|
|
20
|
+
/** @var int Optional visibility flags */
|
|
21
|
+
public int $flags;
|
|
21
22
|
/** @var AttributeGroup[] PHP attribute groups */
|
|
22
|
-
public $attrGroups;
|
|
23
|
+
public array $attrGroups;
|
|
23
24
|
|
|
24
25
|
/**
|
|
25
26
|
* Constructs a parameter node.
|
|
26
27
|
*
|
|
27
|
-
* @param Expr\Variable|Expr\Error
|
|
28
|
-
* @param null|Expr
|
|
29
|
-
* @param null|
|
|
30
|
-
* @param bool
|
|
31
|
-
* @param bool
|
|
32
|
-
* @param array
|
|
33
|
-
* @param int
|
|
34
|
-
* @param AttributeGroup
|
|
28
|
+
* @param Expr\Variable|Expr\Error $var Parameter variable
|
|
29
|
+
* @param null|Expr $default Default value
|
|
30
|
+
* @param null|Identifier|Name|ComplexType $type Type declaration
|
|
31
|
+
* @param bool $byRef Whether is passed by reference
|
|
32
|
+
* @param bool $variadic Whether this is a variadic argument
|
|
33
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
34
|
+
* @param int $flags Optional visibility flags
|
|
35
|
+
* @param list<AttributeGroup> $attrGroups PHP attribute groups
|
|
35
36
|
*/
|
|
36
37
|
public function __construct(
|
|
37
|
-
$var, Expr $default = null, $type = null,
|
|
38
|
+
Expr $var, ?Expr $default = null, ?Node $type = null,
|
|
38
39
|
bool $byRef = false, bool $variadic = false,
|
|
39
40
|
array $attributes = [],
|
|
40
41
|
int $flags = 0,
|
|
41
42
|
array $attrGroups = []
|
|
42
43
|
) {
|
|
43
44
|
$this->attributes = $attributes;
|
|
44
|
-
$this->type =
|
|
45
|
+
$this->type = $type;
|
|
45
46
|
$this->byRef = $byRef;
|
|
46
47
|
$this->variadic = $variadic;
|
|
47
48
|
$this->var = $var;
|
|
@@ -50,11 +51,34 @@ class Param extends NodeAbstract
|
|
|
50
51
|
$this->attrGroups = $attrGroups;
|
|
51
52
|
}
|
|
52
53
|
|
|
53
|
-
public function getSubNodeNames()
|
|
54
|
+
public function getSubNodeNames(): array {
|
|
54
55
|
return ['attrGroups', 'flags', 'type', 'byRef', 'variadic', 'var', 'default'];
|
|
55
56
|
}
|
|
56
57
|
|
|
57
|
-
public function getType()
|
|
58
|
+
public function getType(): string {
|
|
58
59
|
return 'Param';
|
|
59
60
|
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Whether this parameter uses constructor property promotion.
|
|
64
|
+
*/
|
|
65
|
+
public function isPromoted(): bool {
|
|
66
|
+
return $this->flags !== 0;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
public function isPublic(): bool {
|
|
70
|
+
return (bool) ($this->flags & Modifiers::PUBLIC);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
public function isProtected(): bool {
|
|
74
|
+
return (bool) ($this->flags & Modifiers::PROTECTED);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
public function isPrivate(): bool {
|
|
78
|
+
return (bool) ($this->flags & Modifiers::PRIVATE);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
public function isReadonly(): bool {
|
|
82
|
+
return (bool) ($this->flags & Modifiers::READONLY);
|
|
83
|
+
}
|
|
60
84
|
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node;
|
|
6
|
+
use PhpParser\NodeAbstract;
|
|
7
|
+
|
|
8
|
+
class PropertyItem extends NodeAbstract {
|
|
9
|
+
/** @var Node\VarLikeIdentifier Name */
|
|
10
|
+
public VarLikeIdentifier $name;
|
|
11
|
+
/** @var null|Node\Expr Default */
|
|
12
|
+
public ?Expr $default;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Constructs a class property item node.
|
|
16
|
+
*
|
|
17
|
+
* @param string|Node\VarLikeIdentifier $name Name
|
|
18
|
+
* @param null|Node\Expr $default Default value
|
|
19
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
20
|
+
*/
|
|
21
|
+
public function __construct($name, ?Node\Expr $default = null, array $attributes = []) {
|
|
22
|
+
$this->attributes = $attributes;
|
|
23
|
+
$this->name = \is_string($name) ? new Node\VarLikeIdentifier($name) : $name;
|
|
24
|
+
$this->default = $default;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
public function getSubNodeNames(): array {
|
|
28
|
+
return ['name', 'default'];
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
public function getType(): string {
|
|
32
|
+
return 'PropertyItem';
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
// @deprecated compatibility alias
|
|
37
|
+
class_alias(PropertyItem::class, Stmt\PropertyProperty::class);
|
|
@@ -1,70 +1,3 @@
|
|
|
1
1
|
<?php declare(strict_types=1);
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
use PhpParser\Node\Scalar;
|
|
6
|
-
|
|
7
|
-
class DNumber extends Scalar
|
|
8
|
-
{
|
|
9
|
-
/** @var float Number value */
|
|
10
|
-
public $value;
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Constructs a float number scalar node.
|
|
14
|
-
*
|
|
15
|
-
* @param float $value Value of the number
|
|
16
|
-
* @param array $attributes Additional attributes
|
|
17
|
-
*/
|
|
18
|
-
public function __construct(float $value, array $attributes = []) {
|
|
19
|
-
$this->attributes = $attributes;
|
|
20
|
-
$this->value = $value;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
public function getSubNodeNames() : array {
|
|
24
|
-
return ['value'];
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* @internal
|
|
29
|
-
*
|
|
30
|
-
* Parses a DNUMBER token like PHP would.
|
|
31
|
-
*
|
|
32
|
-
* @param string $str A string number
|
|
33
|
-
*
|
|
34
|
-
* @return float The parsed number
|
|
35
|
-
*/
|
|
36
|
-
public static function parse(string $str) : float {
|
|
37
|
-
$str = str_replace('_', '', $str);
|
|
38
|
-
|
|
39
|
-
// if string contains any of .eE just cast it to float
|
|
40
|
-
if (false !== strpbrk($str, '.eE')) {
|
|
41
|
-
return (float) $str;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
// otherwise it's an integer notation that overflowed into a float
|
|
45
|
-
// if it starts with 0 it's one of the special integer notations
|
|
46
|
-
if ('0' === $str[0]) {
|
|
47
|
-
// hex
|
|
48
|
-
if ('x' === $str[1] || 'X' === $str[1]) {
|
|
49
|
-
return hexdec($str);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
// bin
|
|
53
|
-
if ('b' === $str[1] || 'B' === $str[1]) {
|
|
54
|
-
return bindec($str);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
// oct
|
|
58
|
-
// substr($str, 0, strcspn($str, '89')) cuts the string at the first invalid digit (8 or 9)
|
|
59
|
-
// so that only the digits before that are used
|
|
60
|
-
return octdec(substr($str, 0, strcspn($str, '89')));
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
// dec
|
|
64
|
-
return (float) $str;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
public function getType() : string {
|
|
68
|
-
return 'Scalar_DNumber';
|
|
69
|
-
}
|
|
70
|
-
}
|
|
3
|
+
require __DIR__ . '/Float_.php';
|
|
@@ -1,31 +1,3 @@
|
|
|
1
1
|
<?php declare(strict_types=1);
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
use PhpParser\Node\Expr;
|
|
6
|
-
use PhpParser\Node\Scalar;
|
|
7
|
-
|
|
8
|
-
class Encapsed extends Scalar
|
|
9
|
-
{
|
|
10
|
-
/** @var Expr[] list of string parts */
|
|
11
|
-
public $parts;
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Constructs an encapsed string node.
|
|
15
|
-
*
|
|
16
|
-
* @param Expr[] $parts Encaps list
|
|
17
|
-
* @param array $attributes Additional attributes
|
|
18
|
-
*/
|
|
19
|
-
public function __construct(array $parts, array $attributes = []) {
|
|
20
|
-
$this->attributes = $attributes;
|
|
21
|
-
$this->parts = $parts;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
public function getSubNodeNames() : array {
|
|
25
|
-
return ['parts'];
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
public function getType() : string {
|
|
29
|
-
return 'Scalar_Encapsed';
|
|
30
|
-
}
|
|
31
|
-
}
|
|
3
|
+
require __DIR__ . '/InterpolatedString.php';
|
package/php-subsystem/vendor/nikic/php-parser/lib/PhpParser/Node/Scalar/EncapsedStringPart.php
CHANGED
|
@@ -1,30 +1,3 @@
|
|
|
1
1
|
<?php declare(strict_types=1);
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
use PhpParser\Node\Scalar;
|
|
6
|
-
|
|
7
|
-
class EncapsedStringPart extends Scalar
|
|
8
|
-
{
|
|
9
|
-
/** @var string String value */
|
|
10
|
-
public $value;
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Constructs a node representing a string part of an encapsed string.
|
|
14
|
-
*
|
|
15
|
-
* @param string $value String value
|
|
16
|
-
* @param array $attributes Additional attributes
|
|
17
|
-
*/
|
|
18
|
-
public function __construct(string $value, array $attributes = []) {
|
|
19
|
-
$this->attributes = $attributes;
|
|
20
|
-
$this->value = $value;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
public function getSubNodeNames() : array {
|
|
24
|
-
return ['value'];
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
public function getType() : string {
|
|
28
|
-
return 'Scalar_EncapsedStringPart';
|
|
29
|
-
}
|
|
30
|
-
}
|
|
3
|
+
require __DIR__ . '/../InterpolatedStringPart.php';
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
<?php declare(strict_types=1);
|
|
2
|
+
|
|
3
|
+
namespace PhpParser\Node\Scalar;
|
|
4
|
+
|
|
5
|
+
use PhpParser\Node\Scalar;
|
|
6
|
+
|
|
7
|
+
class Float_ extends Scalar {
|
|
8
|
+
/** @var float Number value */
|
|
9
|
+
public float $value;
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Constructs a float number scalar node.
|
|
13
|
+
*
|
|
14
|
+
* @param float $value Value of the number
|
|
15
|
+
* @param array<string, mixed> $attributes Additional attributes
|
|
16
|
+
*/
|
|
17
|
+
public function __construct(float $value, array $attributes = []) {
|
|
18
|
+
$this->attributes = $attributes;
|
|
19
|
+
$this->value = $value;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
public function getSubNodeNames(): array {
|
|
23
|
+
return ['value'];
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* @param mixed[] $attributes
|
|
28
|
+
*/
|
|
29
|
+
public static function fromString(string $str, array $attributes = []): Float_ {
|
|
30
|
+
$attributes['rawValue'] = $str;
|
|
31
|
+
$float = self::parse($str);
|
|
32
|
+
|
|
33
|
+
return new Float_($float, $attributes);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* @internal
|
|
38
|
+
*
|
|
39
|
+
* Parses a DNUMBER token like PHP would.
|
|
40
|
+
*
|
|
41
|
+
* @param string $str A string number
|
|
42
|
+
*
|
|
43
|
+
* @return float The parsed number
|
|
44
|
+
*/
|
|
45
|
+
public static function parse(string $str): float {
|
|
46
|
+
$str = str_replace('_', '', $str);
|
|
47
|
+
|
|
48
|
+
// Check whether this is one of the special integer notations.
|
|
49
|
+
if ('0' === $str[0]) {
|
|
50
|
+
// hex
|
|
51
|
+
if ('x' === $str[1] || 'X' === $str[1]) {
|
|
52
|
+
return hexdec($str);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// bin
|
|
56
|
+
if ('b' === $str[1] || 'B' === $str[1]) {
|
|
57
|
+
return bindec($str);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// oct, but only if the string does not contain any of '.eE'.
|
|
61
|
+
if (false === strpbrk($str, '.eE')) {
|
|
62
|
+
// substr($str, 0, strcspn($str, '89')) cuts the string at the first invalid digit
|
|
63
|
+
// (8 or 9) so that only the digits before that are used.
|
|
64
|
+
return octdec(substr($str, 0, strcspn($str, '89')));
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// dec
|
|
69
|
+
return (float) $str;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
public function getType(): string {
|
|
73
|
+
return 'Scalar_Float';
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
// @deprecated compatibility alias
|
|
78
|
+
class_alias(Float_::class, DNumber::class);
|