what does the cursor() method of GAE Query class return if the last result was already retrieved?
There's still a cursor, even if the last result is retrieved. The query class doesn't know that, in any case: it knows what you've had already, but it doesn't know what else is still to come. The cursor doesn't represent any actual result, it's simply a way of resuming the query later. In fact, it's possible to use a cursor even in the case where you reach the end of the data set on your initial query, but later updates mean that new items are now found on a subsequent request: for example, if you're ordering by last update time.
(Good username, btw: gotta love some PKD.)
From the Google App Engine documentation:
"cursor() returns a base64-encoded cursor string denoting the position in the query's result set following the last result retrieved."
What does it return if the the last result retrieved IS the last result in the query set? Wouldn't this mean that there is no position that can 'follow' the last result retrieved? Therefore, is 'None' returned?