Create mustache.impl library
diff --git a/lib/mustache.dart b/lib/mustache.dart
index ba7c513..9d5683b 100644
--- a/lib/mustache.dart
+++ b/lib/mustache.dart
@@ -1,15 +1,6 @@
library mustache;
-@MirrorsUsed(metaTargets: const [mustache])
-import 'dart:mirrors';
-
-part 'src/lambda_context.dart';
-part 'src/node.dart';
-part 'src/parse.dart';
-part 'src/render_context.dart';
-part 'src/scanner.dart';
-part 'src/template.dart';
-part 'src/token.dart';
+import 'src/mustache_impl.dart' as impl;
/// [Mustache template documentation](http://mustache.github.com/mustache.5.html)
@@ -30,7 +21,7 @@
{bool lenient,
bool htmlEscapeValues,
String name,
- PartialResolver partialResolver}) = _Template.fromSource;
+ PartialResolver partialResolver}) = impl.TemplateImpl.fromSource;
String get name;
String get source;
diff --git a/lib/src/lambda_context.dart b/lib/src/lambda_context.dart
index 2d634af..c5b9a73 100644
--- a/lib/src/lambda_context.dart
+++ b/lib/src/lambda_context.dart
@@ -1,4 +1,4 @@
-part of mustache;
+part of mustache.impl;
/// Passed as an argument to a mustache lambda function.
class _LambdaContext implements LambdaContext {
diff --git a/lib/src/mustache_impl.dart b/lib/src/mustache_impl.dart
new file mode 100644
index 0000000..2ecd10a
--- /dev/null
+++ b/lib/src/mustache_impl.dart
@@ -0,0 +1,14 @@
+library mustache.impl;
+
+@MirrorsUsed(metaTargets: const [mustache])
+import 'dart:mirrors';
+
+import 'package:mustache/mustache.dart';
+
+part 'lambda_context.dart';
+part 'node.dart';
+part 'parse.dart';
+part 'render_context.dart';
+part 'scanner.dart';
+part 'template.dart';
+part 'token.dart';
diff --git a/lib/src/node.dart b/lib/src/node.dart
index 5140574..2b1356a 100644
--- a/lib/src/node.dart
+++ b/lib/src/node.dart
@@ -1,4 +1,4 @@
-part of mustache;
+part of mustache.impl;
void _renderWithContext(_RenderContext ctx, List<_Node> nodes) {
if (ctx.indent == null || ctx.indent == '') {
@@ -229,7 +229,7 @@
void render(_RenderContext ctx) {
var partialName = name;
- _Template template = ctx.partialResolver == null
+ TemplateImpl template = ctx.partialResolver == null
? null
: ctx.partialResolver(partialName);
if (template != null) {
diff --git a/lib/src/parse.dart b/lib/src/parse.dart
index 4c032f5..d90a866 100644
--- a/lib/src/parse.dart
+++ b/lib/src/parse.dart
@@ -1,4 +1,4 @@
-part of mustache;
+part of mustache.impl;
List<_Node> _parse(String source,
bool lenient,
diff --git a/lib/src/render_context.dart b/lib/src/render_context.dart
index c114380..ffc4d73 100644
--- a/lib/src/render_context.dart
+++ b/lib/src/render_context.dart
@@ -1,4 +1,4 @@
-part of mustache;
+part of mustache.impl;
final RegExp _validTag = new RegExp(r'^[0-9a-zA-Z\_\-\.]+$');
final RegExp _integerTag = new RegExp(r'^[0-9]+$');
@@ -17,7 +17,7 @@
this.source)
: _stack = new List.from(stack);
- _RenderContext.partial(_RenderContext ctx, _Template partial, String indent)
+ _RenderContext.partial(_RenderContext ctx, TemplateImpl partial, String indent)
: this(ctx._sink,
ctx._stack,
ctx.lenient,
diff --git a/lib/src/scanner.dart b/lib/src/scanner.dart
index 20fc849..6f2b81b 100644
--- a/lib/src/scanner.dart
+++ b/lib/src/scanner.dart
@@ -1,4 +1,4 @@
-part of mustache;
+part of mustache.impl;
class _Scanner {
diff --git a/lib/src/template.dart b/lib/src/template.dart
index 1e5643b..440e284 100644
--- a/lib/src/template.dart
+++ b/lib/src/template.dart
@@ -1,8 +1,8 @@
-part of mustache;
+part of mustache.impl;
-class _Template implements Template {
+class TemplateImpl implements Template {
- _Template.fromSource(String source,
+ TemplateImpl.fromSource(String source,
{bool lenient: false,
bool htmlEscapeValues : true,
String name,
diff --git a/lib/src/token.dart b/lib/src/token.dart
index 8e2e4dd..2683a04 100644
--- a/lib/src/token.dart
+++ b/lib/src/token.dart
@@ -1,4 +1,4 @@
-part of mustache;
+part of mustache.impl;
class _Token {