code: public String getTypeDescriptor() {
          StringBuilder b = new StringBuilder();
  
          int count = getPropertyCount();
          for (int i=0; i<count; i++) {
              StorableProperty property = getProperty(i);
              if (property.isNullable()) {
                  b.append('N');
              }
              b.append(TypeDesc.forClass(property.getType()).getDescriptor());
          }
  
          return b.toString();
      }
docs: Converts this index into a parseable type descriptor string, which
  basically consists of Java type descriptors appended together. There is
  one slight difference. Types which may be null are prefixed with a 'N'
  character.