{"push_id":1168584346,"size":5,"distinct_size":5,"ref":"refs/heads/af/SWARM-2709/refactor-2/sprint-33/candidate/1","head":"bdeb41fd66dce8491497ab3da1b250eb3258eb4a","before":"c197cc2d451ac50c3cc76fce3cd8fbdbd55957d3","commits":[{"sha":"57e6861b91e2d48753b291e18409eb1d00686ba7","author":{"name":"Andrzej Fiedukowicz","email":"2a5ec98a5003e2a3416a11ded3e31f81c769e29a@teradata.com"},"message":"Separate semanticaly different scalar classes\n\nClasses that were added through FunctionListBuilder::scalar function\ncould be:\n 1) Complex class defining one function, annotated as whole with @ScalarFunction\n    xor @ScalarOperator. Such class can define multiple specialization of same\n    function and were used mostly for complex types like array.\n 2) Class defining multiple function each of which was represented by one\n    or more methods annotated with @ScalarFunction or @ScalarOperator.\n\nThis change is about giving user some way to see semantic difference between\nthose two. Even though the disctinction between those two can be easly done\nin the code (and was already there) I think is better to force user to use\ncorrect function, just to keep him aware of what going on and provide additional\ncheck if what he gets is what he wants.\n\nThe distintion is made by usage of two functions:\n 1) scalar\n 2) scalars\neach of which only accepts corresponding type of class defining function(s).","distinct":true,"url":"https://api.github.com/repos/Teradata/presto/commits/57e6861b91e2d48753b291e18409eb1d00686ba7"},{"sha":"75a394e0bc2176ebb10c5618958057bfb5d12394","author":{"name":"Andrzej Fiedukowicz","email":"2a5ec98a5003e2a3416a11ded3e31f81c769e29a@teradata.com"},"message":"Extract ScalarHeader class to cover basic scalar properties\n\nThe class ScalarHeader that can be created from element annotations\nand keeps track of basic function informations like:\n - isHidden boolean\n - isDeterministic boolean\n - description\n\nAdditionaly ScalarImplementationHeader was defined to keep track\nof all informations including name before Signature is created\n(for the time of Implementation parsing process).\n\nScalarHeader is not part of Signature it is container for\ninformations about function that are not part of Signature\nbut are required for presto to perform some operations on function.\n\nThe ScalarHeader class may and should be reused in other SqlScalarFunction\nbased classes to keep things smooth and compact but it is not done\nas part of this refactoring.","distinct":true,"url":"https://api.github.com/repos/Teradata/presto/commits/75a394e0bc2176ebb10c5618958057bfb5d12394"},{"sha":"747603098aa2b05fab42cbd08203467a5bbbc777","author":{"name":"Andrzej Fiedukowicz","email":"2a5ec98a5003e2a3416a11ded3e31f81c769e29a@teradata.com"},"message":"Extract ScalarImplementation class from ReflectionParametricScalar\n\nThis change is focused on extracting elements describing single\nimplementation of Scalar function from ReflectionParametricScalar.\n\nThe class ScalarImplementation was exctracted from ReflectionParametricScalar.Implementation.\nThis change reasoning is that ScalarImplementation keeps description\nthat may be successfully used outside of ReflectionParametricScalar and\nthe connection between those two classes is that ReflectionParametricScalar uses\nScalarImplementation.\n\nFor keeping changes small the class is extracted together with its own\nparser (also part of ReflectionParametricScalar before) as a private subclass.\n\nThis is why to keep classes as short as simple as possible it was extracted.\n\nAdditionaly the rename ScalarHeaderAndImplementations -> ScalarHeaderAndMethods\nwas performed.","distinct":true,"url":"https://api.github.com/repos/Teradata/presto/commits/747603098aa2b05fab42cbd08203467a5bbbc777"},{"sha":"3887b2228459d6ae2c7690f1c6b6efa12c942270","author":{"name":"Andrzej Fiedukowicz","email":"2a5ec98a5003e2a3416a11ded3e31f81c769e29a@teradata.com"},"message":"Extract annotation parser classes from ReflectionParametricScalar\n\nParsing annotations is not strictly part of SqlScalar specialization\nbehavior. This is why it was moved to external class, so it can be reused\nin other contexts if required.\n\nReflectionParametricScalar was renamed to ParametricScalar as it is\nno longer bounded to its origin.","distinct":true,"url":"https://api.github.com/repos/Teradata/presto/commits/3887b2228459d6ae2c7690f1c6b6efa12c942270"},{"sha":"bdeb41fd66dce8491497ab3da1b250eb3258eb4a","author":{"name":"Andrzej Fiedukowicz","email":"2a5ec98a5003e2a3416a11ded3e31f81c769e29a@teradata.com"},"message":"Fix sprint-33 branch conflicts","distinct":true,"url":"https://api.github.com/repos/Teradata/presto/commits/bdeb41fd66dce8491497ab3da1b250eb3258eb4a"}]}
{"actor":{"display_login":"fiedukow"}}