Fix MemberExpression's end token when importing from Mozilla AST
This commit is contained in:
parent
a1001819bb
commit
4bdd12c17d
|
|
@ -110,7 +110,7 @@
|
||||||
MemberExpression: function(M) {
|
MemberExpression: function(M) {
|
||||||
return new (M.computed ? AST_Sub : AST_Dot)({
|
return new (M.computed ? AST_Sub : AST_Dot)({
|
||||||
start : my_start_token(M),
|
start : my_start_token(M),
|
||||||
end : my_end_token(M),
|
end : M.computed ? my_end_token(M) : my_full_token(M.property),
|
||||||
property : M.computed ? from_moz(M.property) : M.property.name,
|
property : M.computed ? from_moz(M.property) : M.property.name,
|
||||||
expression : from_moz(M.object)
|
expression : from_moz(M.object)
|
||||||
});
|
});
|
||||||
|
|
@ -417,6 +417,22 @@
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
function my_full_token(moznode) {
|
||||||
|
var loc = moznode.loc,
|
||||||
|
start = loc && loc.start,
|
||||||
|
end = loc && loc.end;
|
||||||
|
var range = moznode.range;
|
||||||
|
return new AST_Token({
|
||||||
|
file : loc && loc.source,
|
||||||
|
line : start && start.line,
|
||||||
|
col : start && start.column,
|
||||||
|
pos : range ? range[0] : moznode.start,
|
||||||
|
endline : end && end.line,
|
||||||
|
endcol : end && end.column,
|
||||||
|
endpos : range ? range[1] : moznode.end
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
function map(moztype, mytype, propmap) {
|
function map(moztype, mytype, propmap) {
|
||||||
var moz_to_me = "function From_Moz_" + moztype + "(M){\n";
|
var moz_to_me = "function From_Moz_" + moztype + "(M){\n";
|
||||||
moz_to_me += "return new " + mytype.name + "({\n" +
|
moz_to_me += "return new " + mytype.name + "({\n" +
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user