Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(674)

Unified Diff: utils/css/cssoptions.dart

Issue 9695048: Template parser (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Fix GIT mixup - ugh Created 8 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: utils/css/cssoptions.dart
diff --git a/utils/css/cssoptions.dart b/utils/css/cssoptions.dart
new file mode 100644
index 0000000000000000000000000000000000000000..dfc13533d174589e935f9431bc1850669681ab9b
--- /dev/null
+++ b/utils/css/cssoptions.dart
@@ -0,0 +1,94 @@
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+/** General options used by the compiler. */
+CSSOptions options;
+
+/** Extracts options from command-line arguments. */
+void parseOptions(List<String> args, var files) {
+ assert(options == null);
+ options = new CSSOptions(args, files);
+}
+
+// TODO(sigmund): make into a generic option parser...
Siggi Cherem (dart-lang) 2012/03/15 01:21:25 what did I do? :) - remove the TODO since this is
terry 2012/03/15 19:02:49 Done.
+class CSSOptions {
+ /** Location of corelib and other special dart libraries. */
+ String libDir;
+
+ /* The top-level dart script to compile. */
+ String dartScript;
+
+ /** Where to place the generated code. */
+ String outfile;
+
+ // Options that modify behavior significantly
+
+ bool warningsAsErrors = false;
+ bool checkOnly = false;
+
+ // Message support
+ bool throwOnErrors = false;
+ bool throwOnWarnings = false;
+ bool throwOnFatal = false;
+ bool showInfo = false;
+ bool showWarnings = true;
+ bool useColors = true;
+
+ /**
+ * Options to be used later for passing to the generated code. These are all
+ * the arguments after the first dart script, if any.
+ */
+ List<String> childArgs;
+
+ CSSOptions(List<String> args, var files) {
+ bool ignoreUnrecognizedFlags = false;
+ bool passedLibDir = false;
+ childArgs = [];
+
+ // Start from 2 to skip arguments representing the compiler command
+ // (node/python followed by frogsh/frog.py).
+ loop: for (int i = 2; i < args.length; i++) {
+ var arg = args[i];
+
+ switch (arg) {
+ case '--check-only':
+ checkOnly = true;
+ break;
+
+ case '--verbose':
+ showInfo = true;
+ break;
+
+ case '--suppress_warnings':
+ showWarnings = false;
+ break;
+
+ case '--warnings_as_errors':
+ warningsAsErrors = true;
+ break;
+
+ case '--throw_on_errors':
+ throwOnErrors = true;
+ break;
+
+ case '--throw_on_warnings':
+ throwOnWarnings = true;
+ break;
+
+ case '--no_colors':
+ useColors = false;
+ break;
+
+ case '--checked':
+ checkOnly = true;
+ break;
+
+ default:
+ if (!ignoreUnrecognizedFlags) {
+ print('unrecognized flag: "$arg"');
+ }
+ }
+ }
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698