this.isOptional = false;
this.defaultValue = "";
this.desc = "";
+ this.optvalues = false;
if (typeof src != "undefined") {
this.parse(src);
}
isOptional : false,
defaultValue : '',
desc : '',
- /* qdump needed for cahcing?
- toQDump :function(t)
+ /**
+ * serialize..
+ */
+ toJSON :function(t)
{
- return JSDOC.toQDump(t, 'JSDOC.DocTag.fromDump({', '})', new JSDOC.DocTag());
- } ,
- */
+ var ret = { '*object' : 'DocTag' };
+
+ for (var i in this) {
+ if (i == 'optvalues') {
+ ret[i] = this.optvalues;
+ continue;
+ }
+
+ switch (typeof(this[i])) {
+ case 'function':
+ continue;
+ continue;
+
+ case 'string':
+ case 'number':
+ case 'boolean':
+ ret[i] = this[i]; continue;
+
+
+
+ default:
+
+ print("unknown type: (" + i + ")" + typeof(this[i]));
+ this.toJSON = null;
+ print(JSON.stringify(this));;
+ Seed.quit();
+ }
+ }
+ return ret;
+ },
+
/**
if (Options.LOG) Options.LOG.warn(e);
else throw e;
}
+
+ // if type == @cfg, and matches (|....|...)
+
+ src = src.trim();
+ if (this.title == "cfg" && src.match(/^\([^)]+\)/)) {
+ var m = src.match(/^\(([^)]+)\)/);
+ print(m);
+ if (m[1].match(/\|/)) {
+ var opts = m[1].trim().split(/\s*\|\s*/);
+ this.optvalues = opts;
+ src = src.substring(m[0].length).trim();
+ print(src);
+
+
+ }
+
+
+ }
+
+
this.desc = src; // whatever is left
// example tags need to have whitespace preserved