lloyAlloy on GitHub
destroy
Docs

destroy

Updated
destroy expr
destroy expr after seconds

Calls the value's destroy method and nothing else. The operand is an Instance or a value whose type has a destroy or a Destroy; the std names that shape Destroyable, and any other type is a compile error naming it. Use delete for a connection, a thread, or a scope.

destroy x after n waits n seconds first. An Instance goes to Debris:AddItem(x, n), which outlives the script that scheduled it; a value with a method goes on a task.delay. The emit picks by the type the file shows, and asks typeof(x) at run time when the file shows none.

The word is also free as a name. destroy before a name is the statement, and every other reading is a name, so local function destroy(self), self:destroy(), and t.destroy = f read the Luau way. That is the cleanup method a Roblox table already writes, and a file may write both: destroy part calls the one this statement picks.