code: public TypeSignature getTypeSignature() {
          if (typeSignatureStr == null) {
              return null;
          }
          if (typeSignature == null) {
              try {
                  typeSignature = TypeSignature.parse(typeSignatureStr, declaringClassName);
                  typeSignature.setScanResult(scanResult);
              } catch (final ParseException e) {
                  throw new IllegalArgumentException(e);
              }
          }
          return typeSignature;
      }
docs: Returns the parsed type signature for the field, if available.
  
  @return The parsed type signature for the field, if available, else returns null.