More instanceof checks for annotation usage

1. adding instanceof checks for annotation usage
2. empty/missing `@var` annotation now returns empty string as data type