Index: pkg/polymer/lib/src/files.dart |
diff --git a/pkg/polymer/lib/src/files.dart b/pkg/polymer/lib/src/files.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..9fea763be29c28c25adb3b6b0e138bfb389ae157 |
--- /dev/null |
+++ b/pkg/polymer/lib/src/files.dart |
@@ -0,0 +1,47 @@ |
+// 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. |
+ |
+library files; |
+ |
+import 'package:html5lib/dom.dart'; |
+ |
+/** An input file to process by the template compiler. */ |
+class SourceFile { |
+ static const int HTML = 1; |
+ static const int DART = 2; |
+ static const int STYLESHEET = 3; |
+ |
+ final String path; |
+ final int type; |
+ |
+ Document document; |
+ |
+ /** Dart code or contents of a linked style sheet. */ |
+ String code; |
+ |
+ SourceFile(this.path, {this.type: HTML}); |
+ |
+ bool get isDart => type == DART; |
+ bool get isHtml => type == HTML; |
+ bool get isStyleSheet => type == STYLESHEET; |
+ |
+ String toString() => "#<SourceFile $path>"; |
+} |
+ |
+/** An output file to generated by the template compiler. */ |
+class OutputFile { |
+ final String path; |
+ final String contents; |
+ |
+ /** |
+ * Path to the source file that was transformed into this OutputFile, `null` |
+ * for files that are generated and do not correspond to an input |
+ * [SourceFile]. |
+ */ |
+ final String source; |
+ |
+ OutputFile(this.path, this.contents, {this.source}); |
+ |
+ String toString() => "#<OutputFile $path>"; |
+} |