code: function (source, idParts) {
              var idString = '',
                  self = this,
                  i,
                  idPart,
                  idPartType,
                  nextIdNameCode,
                  first = true;
              for (i = 0; i < idParts.length; i++) {
                  idPart = idParts[i];
                  idPartType = idPart.type;
                  if (!first) {
                      idString += '.';
                  }
                  if (idPartType) {
                      nextIdNameCode = self[idPartType](idPart);
                      if (nextIdNameCode[0]) {
                          pushToArray(source, nextIdNameCode[1]);
                          idString += '"+' + nextIdNameCode[0] + '+"';
                          first = true
                      }
                  } else {
                      // number or string
                      idString += idPart;
                      first = false;
                  }
              }
              return idString;
          }
docs: consider x[d]