How do I check whether a thing has a description? (…or for that matter, whether a thing has a value of a certain type or if a value is set or not?)
if the description of the rock is not “”: …
(You can also say “if the description of the rock is empty”, but this has a subtly different meaning.)
If a property is defined for a class, it is always set. You have to test and compare it to some default value ("", 0, nothing, or whatever).