File = import.File.File;
Options = {
+
+ // options get defined like this..
+ "--src" : "source directory (either absolute - starts with "/" or relative " +
+ "- without, in which case it's added to baseDir"
+ "--baseDir" : 'Base Directory (root directory of code)',
+ "--target" : 'Target Directory (where html files go)',
+ "--cacheDirectory": 'Cached Files Directory',
+ "--conf" : 'Read From a Configuration file', // was c. - configuration file.. - parsed with JSON.parse
+ "--template" : 'Template Directory', // was t.
+ // "recurse": false, // was r. - not supported..
+ "--ext" : 'Extension of code files to read (normally js)', // was x.
+ "--publishExt" : 'Extension of html files to write (normally html)',
+ //"private": '', // was p
+ //"allfunctions": '', // was a
+ //"encoding": '', // was e.
+ //"nocode": '', // was n
+ //"out": '', // was o.
+ //"suppress": '', // was s ??? used?
+ "--outputSource" : 'Output the Source code to symbols/src/* (boolean)',
+ //"testmode": '', // was t
+ "--help" : 'Show help', // was h
+ "--verbose" : 'Show verbose messages', // was v
+ //"disablecache": '', // was C -- not needed? - see if cacheDirectory was set..
+ //"define" : [], // was D.
+ //"handler" : [], // was H -- not supported..
+
- argTypes : {
- "src" : "source directory (either absolute - starts with "/" or relative " +
- "- without, in which case it's added to baseDir"
- "baseDir" : 'Base Directory (root directory of code)',
- "target" : 'Target Directory (where html files go)',
- "cacheDirectory": 'Cached Files Directory',
- "conf" : 'Read From a Configuration file', // was c. - configuration file.. - parsed with JSON.parse
- "template" : 'Template Directory', // was t.
- // "recurse": false, // was r. - not supported..
- "ext" : 'Extension of code files to read (normally js)', // was x.
- "publishExt" : 'Extension of html files to write (normally html)',
- //"private": '', // was p
- //"allfunctions": '', // was a
- //"encoding": '', // was e.
- //"nocode": '', // was n
- //"out": '', // was o.
- //"suppress": '', // was s ??? used?
- "outputSource" : 'Output the Source code to symbols/src/* (boolean)',
- //"testmode": '', // was t
- "help" : 'Show help', // was h
- "verbose" : 'Show verbose messages', // was v
- //"disablecache": '', // was C -- not needed? - see if cacheDirectory was set..
- //"define" : [], // was D.
- //"handler" : [], // was H -- not supported..
- }
-
- // and now the defaults..
-
+ // and now the defaults.. (which type can be infered from..)
+ "src" : [],
"baseDir" : '', // base directory -
"target" : '', // was d. ?? source directory (needed to put temporary files..)
"cacheDirectory" : '',
"suppress": '', // was s ??? used?
"outputSource" : true,
"testmode": '', // was t
- "help": '', // was h
+ "help": false, // was h;se
"verbose": '', // was v
"disablecache": '', // was C
"define" : [], // was D.
for(var i =0; i < args.length;i++) {
- if (!args[i].match(/\-\-[a-z+]$/)) {
+ if (args[i].substring(0,2) != '--') {
+
throw {
name: "ArgumentError",
message: "Unknown argument: " + args[i]
};
}
var a = arg[i].substring(2);
- if (typeof(argTypes[a]) == 'undefined') {
+ if (typeof(argTypes[arg[i]]) == 'undefined') {
throw {
name: "ArgumentError",
message: "Unknown argument: " + args[i]
i++;
continue;
}
-
-
+ if (typeof(this[a]) == 'object') { // tecnically an array.
+ i++;
+ while(i < args.length)
+ {
+ if (args[i].substring(0,2) != '--'){
+
+ break;
+ }
+ this[a].push(args[i]);
+ }
+ i--;
+ }
+ throw {
+ name: "ArgumentError",
+ message: "Do not know how to handle: " + a
+ };
+ }
+
+
+ }
}
\ No newline at end of file