code: function parseTypeName(entityTypeName) {
    if (!entityTypeName) {
      return null;
    }
  
    var typeParts = entityTypeName.split(":#");
    if (typeParts.length > 1) {
      return makeTypeHash(typeParts[0], typeParts[1]);
    }
  
    if (__stringStartsWith(entityTypeName, MetadataStore.ANONTYPE_PREFIX)) {
      var typeHash = makeTypeHash(entityTypeName);
      typeHash.isAnonymous = true
      return typeHash;
    }
    var entityTypeNameNoAssembly = entityTypeName.split(",")[0];
    var typeParts = entityTypeNameNoAssembly.split(".");
    if (typeParts.length > 1) {
      var shortName = typeParts[typeParts.length - 1];
      var namespaceParts = typeParts.slice(0, typeParts.length - 1);
      var ns = namespaceParts.join(".");
      return makeTypeHash(shortName, ns);
    } else {
      return makeTypeHash(entityTypeName);
    }
  }
docs: functions shared between classes related to Metadata