JSDOC/Options.js
[gnome.introspection-doc-generator] / JSDOC / Options.js
index b545e9f..67492eb 100644 (file)
@@ -8,6 +8,8 @@ File = import.File.File;
 Options = {
     
     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',
@@ -27,8 +29,8 @@ Options = {
         "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..
+        //"define" : [],   // was D.
+        //"handler" : [],  // was H -- not supported..
     }
     
     
@@ -129,45 +131,36 @@ Options = {
         
 
         for(var i =0; i < args.length;i++) {
-            if (args[i] == '-o') {
-                cfg.target = args[i+1];
-                i++;
-                continue;
-            }
-            if (args[i] == '-O') {
-                cfg.debugTarget = args[i+1];
-                i++;
-                continue;
+            if (!args[i].match(/\-\-[a-z+]$/)) {
+                throw {
+                    name: "ArgumentError", 
+                    message: "Unknown argument: " + args[i] 
+                };
             }
-            if (args[i] == '-t') {
-                cfg.translateJSON = args[i+1];
-                i++;
-                continue;
+            var a = arg[i].substring(2);
+            if (typeof(argTypes[a]) == 'undefined') {
+                throw {
+                    name: "ArgumentError", 
+                    message: "Unknown argument: " + args[i] 
+                };
             }
-            if (args[i] == '-w') {
-                cfg.tmpDir = args[i+1];
+            // type!!?!?
+            if (typeof(this[a]) == 'string') {
+                this[a] = args[i+1];
                 i++;
                 continue;
             }
-            if (args[i] == '-p') {
-                cfg.prefix = args[i+1];
+            if (typeof(this[a]) == 'boolean') {
+                if (['false', 'true'].indexOf(args[i+1]) < 0) {
+                    throw {
+                        name: "ArgumentError", 
+                        message: "Unknown value for : " + args[i] + ' : ' +  args[i+1] 
+                    };
+                }
+                this[a] = args[i+1] == 'true';
                 i++;
                 continue;
             }
-         
-            if (args[i] == '-C') {
-                cfg.cleanup = false;
-                continue;
-            }
-            if (args[i] == '-f') {
-                cfg.srcfile = args[i+1];
-                i++;
-                continue;
-            }
-            if (cfg.files.indexOf(args[i]) > -1) {
-                continue; // remove dupes.
-            }
-            cfg.files.push(args[i]);
-        }
+            
     
 }
\ No newline at end of file