//------------------------------------------------------------------------------------------------------- // Copyright (C) Microsoft. All rights reserved. // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. //------------------------------------------------------------------------------------------------------- var shouldBailout = false; var reuseObjects = false; var PolymorphicFuncObjArr = []; var PolyFuncArr = []; function GetPolymorphicFunction() { if(PolyFuncArr.length > 1 ) { var myFunc = PolyFuncArr.shift(); PolyFuncArr.push(myFunc); return myFunc; } else { return PolyFuncArr[0]; } } function GetObjectwithPolymorphicFunction(){ if (reuseObjects) { if(PolymorphicFuncObjArr.length > 1 ) { var myFunc = PolymorphicFuncObjArr.shift(); PolymorphicFuncObjArr.push(myFunc); return myFunc } else { return PolymorphicFuncObjArr[0]; } } else { var obj = {}; obj.polyfunc = GetPolymorphicFunction(); PolymorphicFuncObjArr.push(obj) return obj } }; function InitPolymorphicFunctionArray() { for(var i=0;i