Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/voku/BetterReflection

:crystal_ball: Better Reflection is a reflection API that aims to improve and provide more features than PHP's built-in reflection API.
https://github.com/voku/BetterReflection

Writing tests etc.

fc5cb256abc220922b33e57e5b2ee4af2ad299b5 authored over 9 years ago by James Titcumb <[email protected]>
Implement ReflectionMethod::getPrototype()

b9881f74ff7e9d468160878746485563574bced3 authored over 9 years ago by James Titcumb <[email protected]>
Fixed @covers annotation

2b284661ad2386b48ad018c9e7540e6090078570 authored over 9 years ago by James Titcumb <[email protected]>
By default, add the PhpInternalSourceLocator

f1dc1995fad4b5275c90fb05118840131c89a664 authored over 9 years ago by James Titcumb <[email protected]>
Modified SourceLocator classes to return null if cannot find identifier so that SourceLocator aggregates can work properly

d59cf4364049ec2968ecc2d6b2ad7cc8bbd85ca5 authored over 9 years ago by James Titcumb <[email protected]>
Support nested AggregateSourceLocators

78cbcafaa3c1ee66941afda0ea1b5a08c9dc0828 authored over 9 years ago by James Titcumb <[email protected]>
Added flag for identifying when internal source is used

20836fcf00cd4b6690232af8f69020c2ac1a177e authored over 9 years ago by James Titcumb <[email protected]>
Added stub for stdClass as POC for internal class reflection

81702a009d51fb0144e81b9ac3f755823238bb1c authored over 9 years ago by James Titcumb <[email protected]>
Merge pull request #59 from Roave/compat-reflectionclass

Compatibility for ReflectionClass

396c35d959a3dcd1175b02b350d136bbb6cd5c9c authored over 9 years ago by Marco Pivetta <[email protected]>
Merge pull request #79 from Roave/hotfix/source-locator-parameter-removal

Source locator parameter removal when traversing reflection objects

8c541ba3460625a77c5fa0b7f19796777e01edb2 authored over 9 years ago by James Titcumb <[email protected]>
Removing source locator requirement from `ReflectionClass` - now simply uses the passed in reflector every time

fd1808df90bdc0369bde268c2faec7fec5692428 authored over 9 years ago by Marco Pivetta <[email protected]>
Source locator shouldn't be needed anymore when reflecting associated reflection objects

56539667d04e039f5fb6972a60adae69855a84d2 authored over 9 years ago by Marco Pivetta <[email protected]>
Merge pull request #78 from Roave/aggregate-source-locator

AggregateSourceLocator for combining multiple SourceLocators

f205cefa823488d44531f30fcd5cbd712aeaff36 authored over 9 years ago by Marco Pivetta <[email protected]>
Invoke $aggregate directly

3d6fce52fa920b622a61fe2e06ec24438cf23747 authored over 9 years ago by James Titcumb <[email protected]>
Added tests for new stuff

14ceab622227f41a3cbe6ad595ef4c09b22093cf authored over 9 years ago by James Titcumb <[email protected]>
Merge pull request #76 from Roave/ensure-fixtures-not-loaded

Added test listener that ensure classes do not get loaded during tests

cfea863683d2473994ce4db50eefdce3914548a4 authored over 9 years ago by Marco Pivetta <[email protected]>
Merge pull request #77 from Roave/feature/compat-reflectionclass-isinstantiable

`ReflectionClass#isInstantiable()`, `ReflectionClass#isCloneable()`, `ReflectionClass#isIteratea...

886b1a79789a00ed3211ee3270512b4ab65369a0 authored over 9 years ago by James Titcumb <[email protected]>
Implementing logic to prevent silently reflecting invalid parent class/interface

f0da2e1bf78575ab40379ea1f47fcaea65018c29 authored over 9 years ago by Marco Pivetta <[email protected]>
Correcting tests, interfaces extending from traits to be considered invalid (throwing an exception)

dabcc7e0f2a964f42b59e624cec62e9e04ccf541 authored over 9 years ago by Marco Pivetta <[email protected]>
Test asset: interface extending a trait (invalid)

08d3f31e42e83a9bfdd21afe25e6dc4bcd13c9f1 authored over 9 years ago by Marco Pivetta <[email protected]>
Reflecting the parent interfaces of an interface that extends from a class should lead to a failure

7015f8122bc4960a9136845458da88598349510c authored over 9 years ago by Marco Pivetta <[email protected]>
Reflecting the parent class of a class that extends from a trait should lead to a failure

66694364657015c1c48fd96d4a2ce170fa4fcfa1 authored over 9 years ago by Marco Pivetta <[email protected]>
Reflecting the parent class of a class that extends from an interface should lead to a failure

c7b86f22b82aa4e32963d34345d81489b2d55a74 authored over 9 years ago by Marco Pivetta <[email protected]>
Invalid class: class extending a trait

e2b765e01b43aeb994ab2ca3a060a442eaf2818e authored over 9 years ago by Marco Pivetta <[email protected]>
Invalid fixtures to test cases where incorrect inheritances are reflected

64655881c0b27e136167198d7131c496214998af authored over 9 years ago by Marco Pivetta <[email protected]>
Add AggregateSourceLocator which is now used internally if the source locator specified is not already an aggregate

46393354d52042d5a1046c576b843bdbf15131c6 authored over 9 years ago by James Titcumb <[email protected]>
`NotAnInterfaceReflection` exception with tests

50b077dcc38824f86f5630119aefd8c61ea037b3 authored over 9 years ago by Marco Pivetta <[email protected]>
Implementing `NotAClassReflection` exception (tested)

8873ee31ae156b02ed29bc20cd40c5209356b8ee authored over 9 years ago by Marco Pivetta <[email protected]>
Removing useless looping operations (splat already handles everything)

4f22539ea066b301d19eb30790559e65ff09e38d authored over 9 years ago by Marco Pivetta <[email protected]>
Add TODO about the possibility of throwing an exception when an invalid inheritance tree is encountered

bf73028992124bed758b760824d884775d2ae7d8 authored over 9 years ago by Marco Pivetta <[email protected]>
Removing `NoParent` throwing annotation docblock

0464f6089661a539fd7d62bbf232f7aa3d68198d authored over 9 years ago by Marco Pivetta <[email protected]>
Implementing code to switch between fetching parent interfaces for classes or nodes

af90c9a29fd6ed3bf809e62b62ce148edfe7f118 authored over 9 years ago by Marco Pivetta <[email protected]>
CS (spacing)

9dddc7087e6bfe64eee8c4dc65ac4d0f49dc6300 authored over 9 years ago by Marco Pivetta <[email protected]>
Added test listener that ensure classes do not get loaded during tests

e087aa022ef21a0ad5c63a635481896a6559799b authored over 9 years ago by James Titcumb <[email protected]>
Fetched interfaces should include parent interfaces of implemented interface

45f416dbde7d1a73be56504f42c7d3dbb1e46671 authored over 9 years ago by Marco Pivetta <[email protected]>
Complex interface inheritance examples

6a0e9cb73c8b68ae6f52aa1aaea9be871f956517 authored over 9 years ago by Marco Pivetta <[email protected]>
Only instantiable `Traversable` should be iteratable

e3cbb744ec2621f2774ffa636a60881a454d65dd authored over 9 years ago by Marco Pivetta <[email protected]>
Abstract extensions/implementations of `Traversable` should not be iteratable

ac345471e67334dd17b70402835c902a3b6fe254 authored over 9 years ago by Marco Pivetta <[email protected]>
More test assets: iterable abstract `Traversable` implementations (that shouldn't be iteratable)

555e590ff094c865640c22f37ca0a947677980cb authored over 9 years ago by Marco Pivetta <[email protected]>
`ReflectionClass#isIterateable()` implementation

df7376952016aff948f0093f2acdcb1efe2ce17b authored over 9 years ago by Marco Pivetta <[email protected]>
Specification for iteratable and non-iteratable classes

82605894eab0843a1fd71dcda9a1e4809fb3eecc authored over 9 years ago by Marco Pivetta <[email protected]>
Test asset: iterable and non-iterable classes

df66fec639cf6b7a6533c619cfcc385afd4c161b authored over 9 years ago by Marco Pivetta <[email protected]>
CS fixies

d2178f31cc11d91d91896224eaad4953b31ae772 authored over 9 years ago by James Titcumb <[email protected]>
Annotations/links corrections

d22f0b5ed9e66e41186eb3c6c4b7f4b821050b25 authored over 9 years ago by Marco Pivetta <[email protected]>
Implementation for `ReflectionClass#isCloneable()`

58f5ff39ca4e8813bbfc928d46808e4a5b19bc9c authored over 9 years ago by Marco Pivetta <[email protected]>
Specification for `ReflectionClass#isCloneable()`

960d5bd361e2b26f6484acd078c6847751252fd8 authored over 9 years ago by Marco Pivetta <[email protected]>
Test assets for checking cloneability of a class

bd90df30ef6903c74f8ef5a59bf6e74fbef3f918 authored over 9 years ago by Marco Pivetta <[email protected]>
`ReflectionClass#isIstantiable()` implementation

9d3071931b77ab58aa0dd4e87876589b5f65b97a authored over 9 years ago by Marco Pivetta <[email protected]>
Specification for `ReflectionClass#isIstantiable()`

74cb2ff3e105822102bcf10141669a5a960a7a63 authored over 9 years ago by Marco Pivetta <[email protected]>
Merge pull request #75 from Roave/feature/compat-reflectionclass-implementsinterface

`ReflectionClass#implementsInterface()` support

76ad3581fbae5da7e3aaebd2c1af4481ecc09037 authored over 9 years ago by James Titcumb <[email protected]>
`ReflectionClass#implementsInterface()` implementation

7c94f73916c2543e494d57536bf703c909a332bb authored over 9 years ago by Marco Pivetta <[email protected]>
Test specification for the`ReflectionClass#implementsInterface()`

c43d8d089f7eb1cd34796632f0558c8dc8324f91 authored over 9 years ago by Marco Pivetta <[email protected]>
Correcting parameters passed to `assertFalse`

9e4984d46444fd0680ea716e09963572aa53659d authored over 9 years ago by Marco Pivetta <[email protected]>
Merge pull request #73 from Roave/feature/reflectionclass-is-subclass-of

`ReflectionClass#isSubclassOf()` support

d4961ee668ed47ec072a2235a2a7f4ee80bc0c8b authored over 9 years ago by James Titcumb <[email protected]>
Minor docblock correction/clarification

c089acb054bf77473a086720530021eba3dc099d authored over 9 years ago by Marco Pivetta <[email protected]>
Removing untested (dangerous) paths - (bugs ahead when no source locator is provided)

548dcaa7a6a573466552ed776a194a8cb493bd84 authored over 9 years ago by Marco Pivetta <[email protected]>
`ReflectionClass#isSubclassOf()` rejects non-string parameters

6597f206c183f9d7575d0ca77f0e97dea6b5c856 authored over 9 years ago by Marco Pivetta <[email protected]>
`ReflectionClass#isSubclassOf()` should reject non-string parameters

5423c5af2584e767baf1e0d5742e3f9d793518d8 authored over 9 years ago by Marco Pivetta <[email protected]>
`NotAString` exception and implementation

01bbb8d454bb77bdc85414502646dc28c2cdca95 authored over 9 years ago by Marco Pivetta <[email protected]>
`ReflectionClass#isSubclassOf()` implementation

feeff7bc9a593eb15185775473d2b2c8219ab11d authored over 9 years ago by Marco Pivetta <[email protected]>
Basic assertions on how the `ReflectionClass#isSubclassOf()` API should behave

8c7f56111851d5d04f9e7a907c23675e4a8ae922 authored over 9 years ago by Marco Pivetta <[email protected]>
Merge pull request #72 from Roave/feature/is-instance-of

`ReflectionClass#isInstance()` support

af8bc2c37a7d20ab00ba3d897d0b8fbed89c25fc authored over 9 years ago by James Titcumb <[email protected]>
Removing duplicate `@throws` annotation

2d9b60a6e382e6904328f82da225a40fd170cd53 authored over 9 years ago by Marco Pivetta <[email protected]>
`ReflectionClass#isInstance()` implementation

87829ea6c2da24680b938e85def9ba03b3b509b2 authored over 9 years ago by Marco Pivetta <[email protected]>
Tests for the expected API behavior of `ReflectionClass#isInstance()`

5cb1d3fa399bb4583d2ee9d8ec66e05a915c2acb authored over 9 years ago by Marco Pivetta <[email protected]>
Not an object exception and tests

7c3ea2b456051625fd0dc05bb3d67983111ea61b authored over 9 years ago by Marco Pivetta <[email protected]>
Merge pull request #70 from Roave/feature/compat-getinterfaces

`ReflectionClass#getInterfaces()` and `ReflectionClass#getInterfaceNames()` support

bd8b4143c641d71028f0e127c02d74b6e0b0effd authored over 9 years ago by James Titcumb <[email protected]>
Test asset: interfaces implemented in third level class inheritance child

11e347bc63f010407fe5b275f47e53bdbe70d34c authored over 9 years ago by Marco Pivetta <[email protected]>
Expecting multiple levels of inheritance to yield correct interface names

6a0fc431ec0960deffa2ac90a0652a716a4ba846 authored over 9 years ago by Marco Pivetta <[email protected]>
Verifying multi-level inheritance with implemented interfaces (and interface retrieval order)

bb5fa570bc9503dab81f83c74204b2ff5912eb20 authored over 9 years ago by Marco Pivetta <[email protected]>
Asserting on interfaces retrieved from subclasses reflections

ae0d031e25721bfb0359172fe82ca3b9b15c1ce0 authored over 9 years ago by Marco Pivetta <[email protected]>
Expecting interfaces to be retrieved via `getInterfaces`

d62d1398c12786a7a0d2b0075dab5695ecaa9d03 authored over 9 years ago by Marco Pivetta <[email protected]>
Considering reflection of all the parent classes when checking for implemented interfaces

30d90b4131441414061812ed4066d917b65f98da authored over 9 years ago by Marco Pivetta <[email protected]>
Removing unused import

67e8ee48bdfa63abc029145a3f8336d6a3330c7e authored over 9 years ago by Marco Pivetta <[email protected]>
Classes with no parent should yield `null` when asked for the parent class

1f64cd00fd275ca2cb09ba40790efae283f85e7d authored over 9 years ago by Marco Pivetta <[email protected]>
Utility method: get all the classes in the current inheritance

84f62824f6cf896c1cd82d4d96074e1b0dca921d authored over 9 years ago by Marco Pivetta <[email protected]>
Child classes (with no implemented interfaces) should inherit all parent classes interfaces

a286fbc7f5244411f9082d98becb86e6e2299e0e authored over 9 years ago by Marco Pivetta <[email protected]>
Correcting test asset: imported interfaces were wrong

67cc3119c4ab98d5088aba9b28e75ae2a8213ffd authored over 9 years ago by Marco Pivetta <[email protected]>
CS fix: spacing

968617d234e3f542df60798c2e518d11222a9e2a authored over 9 years ago by Marco Pivetta <[email protected]>
Removing unused default (invalid) value

4750481e22f6eaefe1196e601be1e235a4c942ac authored over 9 years ago by Marco Pivetta <[email protected]>
API to reflect interfaces and interface names

168140140aad9180399e187a7cdba85dd5908bc0 authored over 9 years ago by Marco Pivetta <[email protected]>
Passing in a source locator when asking for interface names

4c9d5b9900e18244e787ea3a51218f4be2114cb8 authored over 9 years ago by Marco Pivetta <[email protected]>
Test case: asserting on interfaces to be defined on the test asset class

344126c5b5984e57b22b4e41a2a7b72081a81217 authored over 9 years ago by Marco Pivetta <[email protected]>
Creating fixture class for interface usage testing

3649c35c6d5b859a49919a2a314df348bc73c80b authored over 9 years ago by Marco Pivetta <[email protected]>
Use dev-master for TypeResolver now

6fefcc1cb626b6cb59b1fc5c4cb34e4eeb18cc95 authored over 9 years ago by James Titcumb <[email protected]>
Added types to phpdocs

e5111a915debafd5becf11ba0e19cb68118e8a39 authored over 9 years ago by James Titcumb <[email protected]>
comma

d020f3e6838b828005189d27abacfe8fa5e1cf5b authored over 9 years ago by James Titcumb <[email protected]>
Added private methods getFqsenFromNamedNode and reflectClassForNamedNode helper methods for internally reconstructing traits and interfaces

af3e6fde4398bd57a2544ea7bdbca57ab1b77df5 authored over 9 years ago by James Titcumb <[email protected]>
Added ReflectionClass->getTraitNames() method

c518e582aa9d4abb7a67b64742ee5b2613e5d270 authored over 9 years ago by James Titcumb <[email protected]>
Added ReflectionClass::getDefaultProperties() method

08ba9659e3c5324402cd45b941d623d90ae8ff3a authored over 9 years ago by James Titcumb <[email protected]>
Add a type check to isFinal() and isAbstract()

55ebd7f24c94a09dae0bf1143706b703759f2d12 authored over 9 years ago by James Titcumb <[email protected]>
Added ReflectionClass ::isFinal and ::isAbstract

72a763f8ec69e8edc410539de73841fb1d8eeadc authored over 9 years ago by James Titcumb <[email protected]>
Added ReflectionMethod ::hasProperty ::hasConstant and ::hasMethod

b9ca57b674e9189da5374130cdbc7b0a3b15e4f9 authored over 9 years ago by James Titcumb <[email protected]>
Added ReflectionClass::getStartLine and ::getEndLine methods

125d4ecbff66f932168c35b2c0b89355260c05d4 authored over 9 years ago by James Titcumb <[email protected]>
Added ReflectionClass::isInternal and ::isUserDefined methods

94350c871fe0739944902e39205f8eb733949c39 authored over 9 years ago by James Titcumb <[email protected]>
Added ReflectionClass::getTraits() method

4ea10037ec2a0ee9d6cf7070502654ee8dac8a87 authored over 9 years ago by James Titcumb <[email protected]>
Expanded the TraitFixture for tests

0189f6b22ec707c8d704468cd2430560a8b745bc authored over 9 years ago by James Titcumb <[email protected]>
Implement ReflectionClass::getTraitAliases() using proposed phpDocumentor/TypeResolver PR

6771a3936c6ee5b52d13137d54af923ad435da67 authored over 9 years ago by James Titcumb <[email protected]>
Added ReflectionClass::getDocComment

ee7d61ee7413f635c40b0cd42ba742713237e6db authored over 9 years ago by James Titcumb <[email protected]>
Added ReflectionClass->getParentClass() method

7f637e6c540af55482b676c313b6c802d3dabc2b authored over 9 years ago by James Titcumb <[email protected]>