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:----pJFlj/HSyAnmEA5AZfxYyARCe4llqD4rJCuHDAqrt64u/oeMudAos0KVLvV5FO702WDkOJHwiL7a71oqLx4Q2cas5rTpaXP02OaPQzcf77FsvO3nSm+0v+GooXpioG68VgZISpSwnd7tNnCSHuAyq6TM2NF6JiimX1cS7bUcVxdHpCbWXsi7OF5dDRE0139Kby/YHCPKDHKSYTWP+dQ/IwVnIdd3vLbFr/BbHXr2jFaEl7RSPH1uVE/9SO0cKhND4Mc6WuSkyQ2zQua2gFTeGDgF2fbUiK30ycLRk5mi7vvuDj4WmG9zFDh72JFK3JjrAxljSspF5an4ZP/3xGChrNSJr6aaL1WQgC+IWq1Yk/dYfoIcGcoC/3VloYJenrI9BvfxY9xawq05PX0lcg2oINVEuqrwo1/sqTe722kvDDqdxkDIugoclhaplV9Ap91LA2dd+azbdoMCOGPz/rqtFHow9yZhmyoNDFe5jG9yzpWVPtLR6fxaj8hrxjbw31iGYe5JgaGj+n0Sez4KHN53pdzcwNMHmsKIAh0IYgwECGRGtaxuBW9gZQKvLbFRhUMh/5ledPmUkqQr7igErXZ/Rs5xcSSP5XwRA9/xrCwlNt9vstwGy4EYGid+C61WFHtEb0ncDanPR4QAwbF1OFoXd9kL55gFSN+LNA+7emdyol8=----ATTACHMENT:----NzQ5NzgxODAyNTY5MDYyOSAxNTc3NTA1MzM2MTQ2OTAwIDIxMDc5NzgyMTU5NTk2Mg==