forked from GitHub/gf-rgl
Rename children to args in VoiceXML/SISR/JavaScript.
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
/* Abstract syntax trees */
|
/* Abstract syntax trees */
|
||||||
function Fun(name) {
|
function Fun(name) {
|
||||||
this.name = name;
|
this.name = name;
|
||||||
this.children = copy_arguments(arguments, 1);
|
this.args = copy_arguments(arguments, 1);
|
||||||
}
|
}
|
||||||
Fun.prototype.print = function () { return this.show(0); } ;
|
Fun.prototype.print = function () { return this.show(0); } ;
|
||||||
Fun.prototype.show = function (prec) {
|
Fun.prototype.show = function (prec) {
|
||||||
@@ -17,7 +17,7 @@ Fun.prototype.show = function (prec) {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
var s = this.name;
|
var s = this.name;
|
||||||
var cs = this.children;
|
var cs = this.args;
|
||||||
for (var i in cs) {
|
for (var i in cs) {
|
||||||
s += " " + cs[i].show(1);
|
s += " " + cs[i].show(1);
|
||||||
}
|
}
|
||||||
@@ -27,11 +27,11 @@ Fun.prototype.show = function (prec) {
|
|||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
Fun.prototype.getChild = function (i) {
|
Fun.prototype.getArg = function (i) {
|
||||||
return this.children[i];
|
return this.args[i];
|
||||||
};
|
};
|
||||||
Fun.prototype.setChild = function (i,c) {
|
Fun.prototype.setArg = function (i,c) {
|
||||||
this.children[i] = c;
|
this.args[i] = c;
|
||||||
};
|
};
|
||||||
Fun.prototype.isMeta = function() {
|
Fun.prototype.isMeta = function() {
|
||||||
return this.name == '?';
|
return this.name == '?';
|
||||||
@@ -40,8 +40,8 @@ Fun.prototype.isComplete = function() {
|
|||||||
if (this.isMeta()) {
|
if (this.isMeta()) {
|
||||||
return false;
|
return false;
|
||||||
} else {
|
} else {
|
||||||
for (var i in tree.children) {
|
for (var i in tree.args) {
|
||||||
if (!tree.children[i].isComplete()) {
|
if (!tree.args[i].isComplete()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -94,8 +94,8 @@ Abstract.prototype.annotate = function(tree, type) {
|
|||||||
tree.type = type;
|
tree.type = type;
|
||||||
} else {
|
} else {
|
||||||
var typ = this.types[tree.name];
|
var typ = this.types[tree.name];
|
||||||
for (var i in tree.children) {
|
for (var i in tree.args) {
|
||||||
this.annotate(tree.children[i], typ.args[i]);
|
this.annotate(tree.args[i], typ.args[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return tree;
|
return tree;
|
||||||
@@ -106,10 +106,10 @@ Abstract.prototype.copyTree = function(x) {
|
|||||||
if (!isUndefined(x.type)) {
|
if (!isUndefined(x.type)) {
|
||||||
t.type = x.type;
|
t.type = x.type;
|
||||||
}
|
}
|
||||||
var cs = x.children;
|
var cs = x.args;
|
||||||
if (!isUndefined(cs)) {
|
if (!isUndefined(cs)) {
|
||||||
for (var i in cs) {
|
for (var i in cs) {
|
||||||
t.setChild(i, this.copyTree(cs[i]));
|
t.setArg(i, this.copyTree(cs[i]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return t;
|
return t;
|
||||||
@@ -131,7 +131,7 @@ Abstract.prototype.parseTree_ = function(tokens, prec) {
|
|||||||
if (prec == 0) {
|
if (prec == 0) {
|
||||||
var c, i;
|
var c, i;
|
||||||
for (i = 0; (c = this.parseTree_(tokens, 1)) !== null; i++) {
|
for (i = 0; (c = this.parseTree_(tokens, 1)) !== null; i++) {
|
||||||
tree.setChild(i,c);
|
tree.setArg(i,c);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return tree;
|
return tree;
|
||||||
@@ -162,8 +162,8 @@ Concrete.prototype.linearizeToTerm = function (tree) {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
var cs = new Array();
|
var cs = new Array();
|
||||||
for (var i in tree.children) {
|
for (var i in tree.args) {
|
||||||
cs.push(this.linearizeToTerm(tree.children[i]));
|
cs.push(this.linearizeToTerm(tree.args[i]));
|
||||||
}
|
}
|
||||||
return this.rule(tree.name, cs);
|
return this.rule(tree.name, cs);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user