It gives the number of free places, hinted by the method name `available_places`
Needlessly ugly way to write it imo though
But it doesn't. The code will only ever output 0 or 1. With a regular <=> operator at least.
yeah, so basically 1 we have available places, 0 we do not.
I think it probably made sense to the author because they've used all three (-1,0,1) for other examples, and would've been fine until separated out to a method reused to show the actual number.
I think they tried to be a bit too clever, basically.