getName()) === 'getreasondata'; } public function getTypeFromMethodCall( MethodReflection $methodReflection, MethodCall $methodCall, Scope $scope, ): Type { $reasonType = $scope->getType(new MethodCall($methodCall->var, new Identifier('getReason'))); $types = [ Rule::RULE_ROOT_REQUIRE => new ConstantArrayType([new ConstantStringType('packageName'), new ConstantStringType('constraint')], [new StringType, new ObjectType(ConstraintInterface::class)]), Rule::RULE_FIXED => new ConstantArrayType([new ConstantStringType('package')], [new ObjectType(BasePackage::class)]), Rule::RULE_PACKAGE_CONFLICT => new ObjectType(Link::class), Rule::RULE_PACKAGE_REQUIRES => new ObjectType(Link::class), Rule::RULE_PACKAGE_SAME_NAME => TypeCombinator::intersect(new StringType, new AccessoryNonEmptyStringType()), Rule::RULE_LEARNED => new IntegerType(), Rule::RULE_PACKAGE_ALIAS => new ObjectType(BasePackage::class), Rule::RULE_PACKAGE_INVERSE_ALIAS => new ObjectType(BasePackage::class), ]; foreach ($types as $const => $type) { if ((new ConstantIntegerType($const))->isSuperTypeOf($reasonType)->yes()) { return $type; } } return TypeCombinator::union(...$types); } } __halt_compiler();----SIGNATURE:----KNcG+7wubSIBrdt6ZO+uj2k362/mW6B6xwat6jri5cHsgx9wH2Bmrhuuz36xdR1lyVwm+rMOBV8LdYzbrqWkNXAfm/EaAf0R8JlweZQIr0X4uhk5KpBOIQLp53huWlTFVp3U2q8RLS9p8EVHSFkT44D+9xl6a1LRGqTCCqIGZA2PDmfOygJvZVakBPLcINZXP3Hinbdt44K8I7mpfeYYy+tF0+InY2zEwSvUVUAgmJ0MbhpphCpHVTbvHyzzfXtpKuCKSvNhY/6uhFrAahhwPDOBVeQmNQsLdp//VnT/S69DjetUWDQpKY6UKOAY+Mb7+CRV6SMqFJet06C4tks9lCg65c7ZBNDi5SGPasrskDPshR/D8T9cMJbpeuFY3emb2JRIB/ISsZ7tpj32CWQTetpeJ6YZN79i44wupw6FwlCc81JqHZjn8q8EtfHBV1cOcmQjCZ+227hMyQygAKHNgQ/MHDmW/cC4tGUD1VrfddbOVF/sNkxMDgEDK6INKausZLXcUf7rbSAsGyXLIKL68MCG1ATbq+zjbfRfWX/hzGbW9FGisY4BXeu8h01BCdXxIORIOqIN7ynytWfRCmNgN1ciJnbnIDHX1Dfh9XEY4oapSBX0xuBayh3N5f9DewoayfD/z4S079wlJozVPc5X8mhGBcUwP6OcPR6435whqrs=----ATTACHMENT:----NTU3MjgwODAyNjMyMDM3MiA3OTIzODY3MjAwODI1MTM3IDkzMTYzNDIzNDY3NjM2NDE=