Fix bug introduced in #4457 and add some new features.
There is one BC break. Method getConstants() don't return constant names now, but return instance of ConstantScanner.
Add ConstantScanner and resolve scanning constants with docblock
Change method getConstants() that now return instance of ConstantScanner
Added methods for verifying if constant or property exists
This is definitely a BC break, and we can't do that.
I'd argue instead for the following:
This will allow developers to opt-in to the new behavior, and give us a migration path.
Update method getConstants to avoid BC break
Update DerivedClassScanner and ClassScannerTest
@weierophinney Addition of E_USER_DEPRECATED breaks tests. It's OK or I must change it to E_USER_NOTICE with same message?
@MatyCZ alter the tests to check for the error as well as the behavior.
[#4465] Fixed test to identify error raised
- Add error handler, and verify E_USER_DEPRECATED was raised
- Ensure name of constant is correct case
Merge branch 'hotfix/4465' into develop
Forward port #4465
Merge branch 'hotfix/4465'