{"push_id":668789754,"size":14,"distinct_size":0,"ref":"refs/heads/master","head":"dace36695d3bff2b054caa0c9000e4b40b9c8671","before":"70611df2cf12b03b0f861d264ff144698e7a508c","commits":[{"sha":"08b78c170089e3e647d219f7f5f230ece482bf0c","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-366 scalar, num and bool cannot be own types\n\n- copied new core component with new behaviour\n- modified tests accordingly","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/08b78c170089e3e647d219f7f5f230ece482bf0c"},{"sha":"ef7b46ee2b24e95ca57efc8f089a10ef9f12dc05","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-461 introduce parser initialiser\n\nmodified tests, they use the parser initialiser now instead of the ParserFacade directly","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/ef7b46ee2b24e95ca57efc8f089a10ef9f12dc05"},{"sha":"8a1723afcffe52c52d445add02032e12ec2e1e30","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-378 solve recursive functions\n\ncovers direct recursive functions, they do not require an iterative approach. Instead of creating a function call constraint, we use the assign function and assign the return variable to the expression variable.","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/8a1723afcffe52c52d445add02032e12ec2e1e30"},{"sha":"b0143d9fc513e630f11b8305447a7ec1145ab55a","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-463 multiple return and ConcurrentModificationException\n\nregression tests","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/b0143d9fc513e630f11b8305447a7ec1145ab55a"},{"sha":"40b5d0dfdb14e39334da6552cbbd16760b238524","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-378 solve recursive functions\n\n- covers recursive functions which do not generate further overloads\n- introduced TempMethodSymbol which provides overloads for a given method symbol based on current WorklistDto\n- added AggregateBindingDto which is used in method aggregateBinding and methods called in this method. Introduced it since I had already 6 parameters\n- changed strategy how calls to functions which are not yet solved are treated. I do no longer stop at the current point and start off again, but continue with the lasting constraints (maybe it fails anyway and a dependency is not necessary). Should also be more efficient when turning the algorithm into a parallel version\n- NoOverloadsException could be removed due to the changed strategy (one point above)\n- added new common component: inference engine and reference phase controller do no longer distinguish between solving methods and global namespace scope (will not be the case as soon as global is introduced, why having it different now)\n- multiple changes to WorklistDto:\n-- added field constraintCollection, I think it would be possible to use one big worklist queue for all functions this way (I think this should be more efficient)\n-- renamed isSolvingGlobalDefaultNamespace to isSolvingMethod\n-- added flag for iterative mode and solving dependency mode\n-- incrementing pointer is no longer within dto (dto should not have any logic)\n-- added flag needToRecreateOverloads for the case where parameter or return variable binding was not yet created but temp overload was already used","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/40b5d0dfdb14e39334da6552cbbd16760b238524"},{"sha":"cc2098c326a03787826b0eb3e88899698400120f","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-464 QA 0.3.2: should fix the build","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/cc2098c326a03787826b0eb3e88899698400120f"},{"sha":"90a9212bf7cbcc3a1bbadeee42364360bec8552c","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-466 rename type variable does not promote type bounds\n\n- added new symbols component with fix\n- added regression tests\n- moved recursive function call tests to own class","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/90a9212bf7cbcc3a1bbadeee42364360bec8552c"},{"sha":"dd3445f80527e6f1ecef3b315fc3b0a7e2672bf6","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-378 solve recursive functions\n\n- non recursive functions which had only a dependency to a recursive function were tried to be solved like recursive functions (which is not necessary and was erroneous in addition)\n- needToRecreateOverload is not necessary since the comparison of the bindingsList is made with the old bindingsList (before creating bindings for parameter and return variable if necessary)","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/dd3445f80527e6f1ecef3b315fc3b0a7e2672bf6"},{"sha":"0a4a044c76e8e3ff6198972ecc05f9fc21d80973","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-378 solve recursive functions\n\n- is now able to deal with ad-hoc polymorphic recursive functions\n- realised that adding WorkListDtos immediately into the worklist again is not beneficial as soon as I have recursive functions which generate further overloads during the iterative mode, has multiple overloads respectively. This way we add a dependent multiple times into the worklist even though it need only be reiterated once.","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/0a4a044c76e8e3ff6198972ecc05f9fc21d80973"},{"sha":"8f5b7089a9e0a556e60f4c5ef0ba6f3f238624da","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-458 rename addToListMap in MapHelper to addToListInMap\n\n- copied new common component\n- adopted code accordingly","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/8f5b7089a9e0a556e60f4c5ef0ba6f3f238624da"},{"sha":"e450a8c4af8397ab25179eb03a54f3e81a3c9172","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-378 solve recursive functions\n\napplied overloads were pointing to temp overloads, fixed it. Required to recalculate the overload of dependent recursive functions once overloads for the function have been built.","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/e450a8c4af8397ab25179eb03a54f3e81a3c9172"},{"sha":"f2a5fda10524cb122e4e7a7a2f325acd7066855f","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-464 QA 0.3.2 should fix the build","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/f2a5fda10524cb122e4e7a7a2f325acd7066855f"},{"sha":"3b1b4b5c70fcb38a1b90192068e53674483d8901","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"TINS-378 solve recursive functions\n\n- the creation of further WorkerlistDtos during the iterative mode requires to register the dependencies for them as well. Otherwise the corresponding applied overloads are not recalculated at the end","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/3b1b4b5c70fcb38a1b90192068e53674483d8901"},{"sha":"dace36695d3bff2b054caa0c9000e4b40b9c8671","author":{"email":"03f30fe4aeb7ce5ecdafe3d994505471cafaf690@tutteli.ch","name":"Robert Stoll"},"message":"v. 0.3.2","distinct":false,"url":"https://api.github.com/repos/TinsPHP/tins-inference-engine/commits/dace36695d3bff2b054caa0c9000e4b40b9c8671"}]}