Frame:SetManyAttributes

__NOTOC__
Small function to be attached to secure frames to allow for setting many attributes in a single call.
 local function SetManyAttributes(self, ...)
 	for i=1,select("#", ...),2 do
 		local att,val = select(i, ...)
 		if not att then return end
 		self:SetAttribute(att,val)
 	end
 end
== Example ==
 local frames = {}
 
 for i=1,12 do
 	frames[i] = CreateFrame("Button", nil, UIParent, "SecureActionButtonTemplate")
 	frames[i].SetManyAttributes = SetManyAttributes
 end
 
 frames[1]:SetManyAttributes("type1", "macro", "macrotext", "/equip Hydrocane")
 frames[2]:SetManyAttributes("type1", "spell", "spell", "Greater Heal")
Or to just use the function on a random frame:
 SetManyAttributes(someFrame, "type1", "macro", "macrotext", "/equip Hydrocane");