--[[ Retrieves at most one child from the children passed to a component. If passed nil or an empty table, will return nil. Throws an error if passed more than one child. ]] local function oneChild(children) if not children then return nil end local key, child = next(children) if not child then return nil end local after = next(children, key) if after then error("Expected at most child, had more than one child.", 2) end return child end return oneChild