Listing 6.7 and "Using safe calls with let" mismatch?

Hello,

even if the line
beverage = null
would be above the block with
beverage = readLine()?.let {
it is not as simple as typing null or leave it blank while execution time to prevent the execution of the let block.
In the Kotlin standard library it says:
readLine(): Return the line read or null if the input stream is redirected to a file and the end of file has been reached.
Am i wrong here?