@@ -115,26 +115,17 @@ private function getAsserts(string $functionName): array
115115 public static function getAssertsFromReflection (
116116 ReflectionMethod | ReflectionFunction $ reflection
117117 ): array {
118- $ attributes = $ reflection-> getAttributes ( );
118+ $ instances = AttributeHelper:: getFunctionInstances ( $ reflection, AssertIfFalse::class );
119119 $ asserts = [];
120- foreach ($ attributes as $ attribute ) {
121- if ($ attribute ->getName () === AssertIfFalse::class) {
122- $ instance = $ attribute ->newInstance ();
123- assert ($ instance instanceof AssertIfFalse);
124- $ asserts = array_merge ($ asserts , $ instance ->params );
125- }
120+
121+ foreach ($ instances ['function ' ] as $ instance ) {
122+ $ asserts = array_merge ($ asserts , $ instance ->params );
126123 }
127124
128- $ parameters = $ reflection ->getParameters ();
129- foreach ($ parameters as $ parameter ) {
130- $ attributes = $ parameter ->getAttributes ();
131- foreach ($ attributes as $ attribute ) {
132- if ($ attribute ->getName () === AssertIfFalse::class) {
133- $ instance = $ attribute ->newInstance ();
134- assert ($ instance instanceof AssertIfFalse);
135- $ argument = $ instance ->params [array_key_first ($ instance ->params )];
136- $ asserts [$ parameter ->name ] = $ argument ;
137- }
125+ foreach ($ instances ['parameters ' ] as $ name => $ attrs ) {
126+ foreach ($ attrs as $ instance ) {
127+ $ argument = $ instance ->params [array_key_first ($ instance ->params )];
128+ $ asserts [$ name ] = $ argument ;
138129 }
139130 }
140131
0 commit comments