1 //<Script type="text/javascript">
3 imports['Object.js'].load(Object);
4 JSDOC = imports['JSDOC.js'].JSDOC;
5 console = imports['console.js'].console;
9 * @prop data {String} raw value of token
10 * @prop type {String} type of token
11 * TOKN (unknown) - name is UNKNOWN_TOKEN
12 * KEYW (keyword) - name is upper case version of keyword
13 * NAME (name/identifier) - name is NAME
14 * COMM (comment) - name is MULTI_LINE_COMM, JSDOC, SINGLE_LINE_COMM
15 * PUNC (puctuation) - name is String description of punctionan (eg LEFTPARAM)
16 * WHIT (white space) - name is SPACE,NEWLINE
17 * STRN (string) - name is DOBULE_QUOTE, SINGLE_QUOTE
18 * NUMB (number) - name is OCTAL,DECIMAL,HEC_DEC
19 * REGX (reg.expression) - name is REGX
20 * @prop name {String} see type details above
21 * @prop indentifier {Identifier} identifier class if relivant
25 Token = Object.define(
26 function(data, type, name) {
31 this.outData = ''; // used by packer/scopeparser
32 this.identifier = false; // used by scope
44 Roo.each(this.items, function(ai) {
47 Roo.each(ai, function(it) {
48 str += it.toRaw(lvl + 1);
57 for (var i in this.props) {
58 ret += this.props[i].key.toRaw(lvl+1) + ' : ';
59 Roo.each(this.props[i].val, function(e) {
68 return this.prefix + ret;
76 eval( "_tmp = " + this.data);
79 return "ERROR unparsable" + this.data;
86 return this.name === what || this.type === what;