function Trove.Extend(F)if F._cleaning then error("\067\097\110\110\111\116 \099\097\108\108 \116\114\111\118\101\058\069\120\116\101\110\100\040\041 \119\104\105\108\101 \099\108\101\097\110\105\110\103",2)end return F:Construct(Trove)end
--[=[
	@return Trove
	Creates and adds another trove to itself. This is just shorthand
	for `trove:Construct(Trove)`. This is useful for contexts where
	the trove object is present, but the class itself isn't.

	:::note
	This does _not_ clone the trove. In other words, the objects in the
	trove are not given to the new constructed trove. This is simply to
	construct a new Trove and add it as an object to track.
	:::

	```lua
	local trove = Trove.new()
	local subTrove = trove:Extend()

	trove:Clean() -- Cleans up the subTrove too
	```
]=]
function Trove:Extend()
	if self._cleaning then
		error("Cannot call trove:Extend() while cleaning", 2)
	end
	return self:Construct(Trove)
end
