|
|
|
@ -14,14 +14,14 @@ exports.convStr = function(str, literals) {
|
|
|
|
|
return literals[literals.lp++];
|
|
|
|
|
else
|
|
|
|
|
return str;
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
exports.parseNamespaces = function(str, literals) {
|
|
|
|
|
var result, vals;
|
|
|
|
|
if (str.length === 3 && str.toUpperCase() === 'NIL')
|
|
|
|
|
vals = null;
|
|
|
|
|
else {
|
|
|
|
|
result = exports.parseExpr(str, literals)
|
|
|
|
|
result = exports.parseExpr(str, literals);
|
|
|
|
|
vals = [];
|
|
|
|
|
for (var i=0,len=result.length; i<len; ++i) {
|
|
|
|
|
var val = {
|
|
|
|
@ -42,7 +42,7 @@ exports.parseNamespaces = function(str, literals) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return vals;
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
exports.parseFetch = function(str, literals, fetchData) {
|
|
|
|
|
literals.lp = 0;
|
|
|
|
@ -62,7 +62,7 @@ exports.parseFetch = function(str, literals, fetchData) {
|
|
|
|
|
else if (typeof result[i] === 'string') // simple extensions
|
|
|
|
|
fetchData[result[i].toLowerCase()] = result[i+1];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
exports.parseBodyStructure = function(cur, literals, prefix, partID) {
|
|
|
|
|
var ret = [];
|
|
|
|
@ -101,7 +101,7 @@ exports.parseBodyStructure = function(cur, literals, prefix, partID) {
|
|
|
|
|
type: cur[0].toLowerCase(), subtype: cur[1].toLowerCase(),
|
|
|
|
|
params: null, id: cur[3], description: cur[4], encoding: cur[5],
|
|
|
|
|
size: cur[6]
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
} else {
|
|
|
|
|
// type information for malformed multipart body
|
|
|
|
|
part = { type: cur[0].toLowerCase(), params: null };
|
|
|
|
@ -120,7 +120,7 @@ exports.parseBodyStructure = function(cur, literals, prefix, partID) {
|
|
|
|
|
// envelope
|
|
|
|
|
if (partLen > next && Array.isArray(cur[next])) {
|
|
|
|
|
part.envelope = {};
|
|
|
|
|
for (var i=0,field,len=cur[next].length; i<len; ++i) {
|
|
|
|
|
for (var i=0,len=cur[next].length; i<len; ++i) {
|
|
|
|
|
if (i === 0)
|
|
|
|
|
part.envelope.date = cur[next][i];
|
|
|
|
|
else if (i === 1)
|
|
|
|
@ -198,7 +198,7 @@ exports.parseBodyStructure = function(cur, literals, prefix, partID) {
|
|
|
|
|
ret.unshift(part);
|
|
|
|
|
}
|
|
|
|
|
return ret;
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
exports.parseStructExtra = function(part, partLen, cur, next) {
|
|
|
|
|
if (partLen > next) {
|
|
|
|
@ -242,13 +242,13 @@ exports.parseStructExtra = function(part, partLen, cur, next) {
|
|
|
|
|
// let's not parse it for now ...
|
|
|
|
|
part.extensions = cur[next];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
function isAlpha(ch) {
|
|
|
|
|
/*function isAlpha(ch) {
|
|
|
|
|
if (typeof ch === 'string')
|
|
|
|
|
ch = ch.charCodeAt(0);
|
|
|
|
|
return ((ch >= 65 && ch <= 90) || (ch >= 97 && ch <= 122));
|
|
|
|
|
}
|
|
|
|
|
}*/
|
|
|
|
|
|
|
|
|
|
exports.parseExpr = function(o, literals, result, start) {
|
|
|
|
|
start = start || 0;
|
|
|
|
@ -284,4 +284,4 @@ exports.parseExpr = function(o, literals, result, start) {
|
|
|
|
|
result.push(exports.convStr(o.str.substring(lastPos+1), literals));
|
|
|
|
|
}
|
|
|
|
|
return (isTop ? result : start);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|