gitextract_tlvewwen/ ├── .editorconfig ├── .gitattributes ├── .github/ │ └── workflows/ │ └── build.yml ├── .gitignore ├── .php-cs-fixer.dist.php ├── CHANGES.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── composer.json ├── fixtures/ │ ├── AbstractBaseClassWithMethodWithReturnType.php │ ├── ClassExtendAbstractWithMethodWithReturnType.php │ ├── DnfArgumentType.php │ ├── DnfReturnType.php │ ├── EmptyClass.php │ ├── EmptyInterface.php │ ├── Enum.php │ ├── FinalClass.php │ ├── IntersectionArgumentType.php │ ├── IntersectionReturnType.php │ ├── MethodWithAdditionalParam.php │ ├── MixedTypes.php │ ├── ModifierInterface.php │ ├── Named.php │ ├── NeverType.php │ ├── NullableArrayParameter.php │ ├── NullableParameterTypeFalse.php │ ├── NullableParameterTypeTrue.php │ ├── NullableReturnTypeFalse.php │ ├── NullableReturnTypeTrue.php │ ├── OptionalDepsClass.php │ ├── ReadOnlyClass.php │ ├── ReturningFinalClass.php │ ├── SelfReferencing.php │ ├── SpecialMethods.php │ ├── StandaloneParameterTypeFalse.php │ ├── StandaloneParameterTypeNull.php │ ├── StandaloneParameterTypeTrue.php │ ├── StandaloneReturnTypeFalse.php │ ├── StandaloneReturnTypeNull.php │ ├── StandaloneReturnTypeTrue.php │ ├── TentativeReturnTypeNull.php │ ├── ThrowableInterface.php │ ├── UnionArgumentTypeFalse.php │ ├── UnionArgumentTypes.php │ ├── UnionReturnTypeFalse.php │ ├── UnionReturnTypes.php │ ├── WithArguments.php │ ├── WithCallableArgument.php │ ├── WithFinalMethod.php │ ├── WithFinalVirtuallyPrivateMethod.php │ ├── WithPhpdocClass.php │ ├── WithProtectedAbstractMethod.php │ ├── WithReferences.php │ ├── WithReturnTypehints.php │ ├── WithStaticMethod.php │ ├── WithTypehintedVariadicArgument.php │ ├── WithVariadicArgument.php │ └── WithVirtuallyPrivateMethod.php ├── phpstan-baseline.neon ├── phpstan.dist.neon ├── phpunit.xml.dist ├── spec/ │ └── Prophecy/ │ ├── Argument/ │ │ ├── ArgumentsWildcardSpec.php │ │ └── Token/ │ │ ├── AnyValueTokenSpec.php │ │ ├── AnyValuesTokenSpec.php │ │ ├── ApproximateValueTokenSpec.php │ │ ├── ArrayCountTokenSpec.php │ │ ├── ArrayEntryTokenSpec.php │ │ ├── ArrayEveryEntryTokenSpec.php │ │ ├── CallbackTokenSpec.php │ │ ├── ExactValueTokenSpec.php │ │ ├── IdenticalValueTokenSpec.php │ │ ├── InArrayTokenSpec.php │ │ ├── LogicalAndTokenSpec.php │ │ ├── LogicalNotTokenSpec.php │ │ ├── NotInArrayTokenSpec.php │ │ ├── ObjectStateTokenSpec.php │ │ ├── StringContainsTokenSpec.php │ │ └── TypeTokenSpec.php │ ├── ArgumentSpec.php │ ├── Call/ │ │ ├── CallCenterSpec.php │ │ └── CallSpec.php │ ├── Comparator/ │ │ ├── ClosureComparatorSpec.php │ │ ├── FactorySpec.php │ │ └── ProphecyComparatorSpec.php │ ├── Doubler/ │ │ ├── CachedDoublerSpec.php │ │ ├── ClassPatch/ │ │ │ ├── DisableConstructorPatchSpec.php │ │ │ ├── KeywordPatchSpec.php │ │ │ ├── MagicCallPatchSpec.php │ │ │ ├── ProphecySubjectPatchSpec.php │ │ │ ├── ReflectionClassNewInstancePatchSpec.php │ │ │ ├── SplFileInfoPatchSpec.php │ │ │ ├── ThrowablePatchSpec.php │ │ │ └── TraversablePatchSpec.php │ │ ├── DoublerSpec.php │ │ ├── Generator/ │ │ │ ├── ClassCodeGeneratorSpec.php │ │ │ ├── ClassCreatorSpec.php │ │ │ └── Node/ │ │ │ ├── ArgumentNodeSpec.php │ │ │ ├── ArgumentTypeNodeSpec.php │ │ │ ├── ClassNodeSpec.php │ │ │ ├── MethodNodeSpec.php │ │ │ ├── ReturnTypeNodeSpec.php │ │ │ └── Type/ │ │ │ ├── BuiltinTypeSpec.php │ │ │ ├── IntersectionTypeSpec.php │ │ │ ├── ObjectTypeSpec.php │ │ │ └── UnionTypeSpec.php │ │ ├── LazyDoubleSpec.php │ │ └── NameGeneratorSpec.php │ ├── Exception/ │ │ ├── Call/ │ │ │ └── UnexpectedCallExceptionSpec.php │ │ ├── Doubler/ │ │ │ ├── ClassCreatorExceptionSpec.php │ │ │ ├── ClassMirrorExceptionSpec.php │ │ │ ├── ClassNotFoundExceptionSpec.php │ │ │ ├── DoubleExceptionSpec.php │ │ │ ├── InterfaceNotFoundExceptionSpec.php │ │ │ ├── MethodNotExtendableExceptionSpec.php │ │ │ └── MethodNotFoundExceptionSpec.php │ │ ├── Prediction/ │ │ │ ├── AggregateExceptionSpec.php │ │ │ ├── NoCallsExceptionSpec.php │ │ │ ├── UnexpectedCallsCountExceptionSpec.php │ │ │ └── UnexpectedCallsExceptionSpec.php │ │ └── Prophecy/ │ │ ├── MethodProphecyExceptionSpec.php │ │ └── ObjectProphecyExceptionSpec.php │ ├── Prediction/ │ │ ├── CallPredictionSpec.php │ │ ├── CallTimesPredictionSpec.php │ │ ├── CallbackPredictionSpec.php │ │ └── NoCallsPredictionSpec.php │ ├── Promise/ │ │ ├── CallbackPromiseSpec.php │ │ ├── ReturnArgumentPromiseSpec.php │ │ ├── ReturnPromiseSpec.php │ │ └── ThrowPromiseSpec.php │ ├── Prophecy/ │ │ ├── MethodProphecySpec.php │ │ ├── ObjectProphecySpec.php │ │ └── RevealerSpec.php │ ├── ProphetSpec.php │ └── Util/ │ └── StringUtilSpec.php ├── src/ │ └── Prophecy/ │ ├── Argument/ │ │ ├── ArgumentsWildcard.php │ │ └── Token/ │ │ ├── AnyValueToken.php │ │ ├── AnyValuesToken.php │ │ ├── ApproximateValueToken.php │ │ ├── ArrayCountToken.php │ │ ├── ArrayEntryToken.php │ │ ├── ArrayEveryEntryToken.php │ │ ├── CallbackToken.php │ │ ├── ExactValueToken.php │ │ ├── IdenticalValueToken.php │ │ ├── InArrayToken.php │ │ ├── LogicalAndToken.php │ │ ├── LogicalNotToken.php │ │ ├── NotInArrayToken.php │ │ ├── ObjectStateToken.php │ │ ├── StringContainsToken.php │ │ ├── TokenInterface.php │ │ └── TypeToken.php │ ├── Argument.php │ ├── Call/ │ │ ├── Call.php │ │ └── CallCenter.php │ ├── Comparator/ │ │ ├── ClosureComparator.php │ │ ├── Factory.php │ │ ├── FactoryProvider.php │ │ └── ProphecyComparator.php │ ├── Doubler/ │ │ ├── CachedDoubler.php │ │ ├── ClassPatch/ │ │ │ ├── ClassPatchInterface.php │ │ │ ├── DisableConstructorPatch.php │ │ │ ├── KeywordPatch.php │ │ │ ├── MagicCallPatch.php │ │ │ ├── ProphecySubjectPatch.php │ │ │ ├── ReflectionClassNewInstancePatch.php │ │ │ ├── SplFileInfoPatch.php │ │ │ ├── ThrowablePatch.php │ │ │ └── TraversablePatch.php │ │ ├── DoubleInterface.php │ │ ├── Doubler.php │ │ ├── Generator/ │ │ │ ├── ClassCodeGenerator.php │ │ │ ├── ClassCreator.php │ │ │ ├── ClassMirror.php │ │ │ ├── Node/ │ │ │ │ ├── ArgumentNode.php │ │ │ │ ├── ArgumentTypeNode.php │ │ │ │ ├── ClassNode.php │ │ │ │ ├── MethodNode.php │ │ │ │ ├── ReturnTypeNode.php │ │ │ │ ├── Type/ │ │ │ │ │ ├── BuiltinType.php │ │ │ │ │ ├── IntersectionType.php │ │ │ │ │ ├── ObjectType.php │ │ │ │ │ ├── SimpleType.php │ │ │ │ │ ├── TypeInterface.php │ │ │ │ │ └── UnionType.php │ │ │ │ └── TypeNodeAbstract.php │ │ │ ├── ReflectionInterface.php │ │ │ └── TypeHintReference.php │ │ ├── LazyDouble.php │ │ └── NameGenerator.php │ ├── Exception/ │ │ ├── Call/ │ │ │ └── UnexpectedCallException.php │ │ ├── Doubler/ │ │ │ ├── ClassCreatorException.php │ │ │ ├── ClassMirrorException.php │ │ │ ├── ClassNotFoundException.php │ │ │ ├── DoubleException.php │ │ │ ├── DoublerException.php │ │ │ ├── InterfaceNotFoundException.php │ │ │ ├── MethodNotExtendableException.php │ │ │ ├── MethodNotFoundException.php │ │ │ └── ReturnByReferenceException.php │ │ ├── Exception.php │ │ ├── InvalidArgumentException.php │ │ ├── Prediction/ │ │ │ ├── AggregateException.php │ │ │ ├── FailedPredictionException.php │ │ │ ├── NoCallsException.php │ │ │ ├── PredictionException.php │ │ │ ├── UnexpectedCallsCountException.php │ │ │ └── UnexpectedCallsException.php │ │ └── Prophecy/ │ │ ├── MethodProphecyException.php │ │ ├── ObjectProphecyException.php │ │ └── ProphecyException.php │ ├── PhpDocumentor/ │ │ ├── ClassAndInterfaceTagRetriever.php │ │ ├── ClassTagRetriever.php │ │ └── MethodTagRetrieverInterface.php │ ├── Prediction/ │ │ ├── CallPrediction.php │ │ ├── CallTimesPrediction.php │ │ ├── CallbackPrediction.php │ │ ├── NoCallsPrediction.php │ │ └── PredictionInterface.php │ ├── Promise/ │ │ ├── CallbackPromise.php │ │ ├── PromiseInterface.php │ │ ├── ReturnArgumentPromise.php │ │ ├── ReturnPromise.php │ │ └── ThrowPromise.php │ ├── Prophecy/ │ │ ├── MethodProphecy.php │ │ ├── ObjectProphecy.php │ │ ├── ProphecyInterface.php │ │ ├── ProphecySubjectInterface.php │ │ ├── Revealer.php │ │ └── RevealerInterface.php │ ├── Prophet.php │ └── Util/ │ ├── ExportUtil.php │ └── StringUtil.php └── tests/ ├── Argument/ │ └── Token/ │ └── ExactValueTokenTest.php ├── Comparator/ │ └── FactoryProviderTest.php ├── Doubler/ │ ├── ClassPatch/ │ │ └── MagicCallPatchTest.php │ └── Generator/ │ ├── ClassMirrorTest.php │ └── Node/ │ └── TypeNodeAbstractTest.php └── FunctionalTest.php