I don't see an easy way out of the need for the conditional here, since you don't know if you're getting a Book or a Module, and the Book's Toc needs to be initialized immediately here.