Wipe empties the contents of the table
Lua Code:
table.insert(addClassSpellList, 1, tempSpellChatList)
wipe(addClassSpellList[1])
--is the same as
wipe(tempSpellChatList)
In your code, there is no need to wipe anything as tempSpellChatList is being assigned a brand new table (any time you see = {} means a brand new table has been created.)
tempSpellChatList can be made local in the function as you're not saving anything through reuse.
Run the following and see the table id's (references, memory addresses, pointers...)
Code:
local a={"1"}
print("A", a, a[1])
local b = a
print("B", b, b[1])
wipe(a)
print("wipe", "A")
print("B", b, b[1])
a = {}
print("A", a) -- a will point to a new table
print("B", b) -- b still holds the old pointer