Refactor to real enums (#62)
diff --git a/lib/src/event.dart b/lib/src/event.dart
index 733e39d..31625f8 100644
--- a/lib/src/event.dart
+++ b/lib/src/event.dart
@@ -157,26 +157,15 @@
}
/// An enum of types of [Event] object.
-class EventType {
- static const STREAM_START = EventType._('STREAM_START');
- static const STREAM_END = EventType._('STREAM_END');
-
- static const DOCUMENT_START = EventType._('DOCUMENT_START');
- static const DOCUMENT_END = EventType._('DOCUMENT_END');
-
- static const ALIAS = EventType._('ALIAS');
- static const SCALAR = EventType._('SCALAR');
-
- static const SEQUENCE_START = EventType._('SEQUENCE_START');
- static const SEQUENCE_END = EventType._('SEQUENCE_END');
-
- static const MAPPING_START = EventType._('MAPPING_START');
- static const MAPPING_END = EventType._('MAPPING_END');
-
- final String name;
-
- const EventType._(this.name);
-
- @override
- String toString() => name;
+enum EventType {
+ STREAM_START,
+ STREAM_END,
+ DOCUMENT_START,
+ DOCUMENT_END,
+ ALIAS,
+ SCALAR,
+ SEQUENCE_START,
+ SEQUENCE_END,
+ MAPPING_START,
+ MAPPING_END
}
diff --git a/lib/src/scanner.dart b/lib/src/scanner.dart
index 66d9d8b..2e49943 100644
--- a/lib/src/scanner.dart
+++ b/lib/src/scanner.dart
@@ -1666,20 +1666,13 @@
/// whitespace for a block scalar.
///
/// See http://yaml.org/spec/1.2/spec.html#id2794534.
-class _Chomping {
+enum _Chomping {
/// All trailing whitespace is discarded.
- static const STRIP = _Chomping('STRIP');
+ STRIP,
/// A single trailing newline is retained.
- static const CLIP = _Chomping('CLIP');
+ CLIP,
/// All trailing whitespace is preserved.
- static const KEEP = _Chomping('KEEP');
-
- final String name;
-
- const _Chomping(this.name);
-
- @override
- String toString() => name;
+ KEEP
}
diff --git a/lib/src/token.dart b/lib/src/token.dart
index 7381a7d..9051d68 100644
--- a/lib/src/token.dart
+++ b/lib/src/token.dart
@@ -129,38 +129,31 @@
}
/// An enum of types of [Token] object.
-class TokenType {
- static const STREAM_START = TokenType._('STREAM_START');
- static const STREAM_END = TokenType._('STREAM_END');
+enum TokenType {
+ STREAM_START,
+ STREAM_END,
- static const VERSION_DIRECTIVE = TokenType._('VERSION_DIRECTIVE');
- static const TAG_DIRECTIVE = TokenType._('TAG_DIRECTIVE');
- static const DOCUMENT_START = TokenType._('DOCUMENT_START');
- static const DOCUMENT_END = TokenType._('DOCUMENT_END');
+ VERSION_DIRECTIVE,
+ TAG_DIRECTIVE,
+ DOCUMENT_START,
+ DOCUMENT_END,
- static const BLOCK_SEQUENCE_START = TokenType._('BLOCK_SEQUENCE_START');
- static const BLOCK_MAPPING_START = TokenType._('BLOCK_MAPPING_START');
- static const BLOCK_END = TokenType._('BLOCK_END');
+ BLOCK_SEQUENCE_START,
+ BLOCK_MAPPING_START,
+ BLOCK_END,
- static const FLOW_SEQUENCE_START = TokenType._('FLOW_SEQUENCE_START');
- static const FLOW_SEQUENCE_END = TokenType._('FLOW_SEQUENCE_END');
- static const FLOW_MAPPING_START = TokenType._('FLOW_MAPPING_START');
- static const FLOW_MAPPING_END = TokenType._('FLOW_MAPPING_END');
+ FLOW_SEQUENCE_START,
+ FLOW_SEQUENCE_END,
+ FLOW_MAPPING_START,
+ FLOW_MAPPING_END,
- static const BLOCK_ENTRY = TokenType._('BLOCK_ENTRY');
- static const FLOW_ENTRY = TokenType._('FLOW_ENTRY');
- static const KEY = TokenType._('KEY');
- static const VALUE = TokenType._('VALUE');
+ BLOCK_ENTRY,
+ FLOW_ENTRY,
+ KEY,
+ VALUE,
- static const ALIAS = TokenType._('ALIAS');
- static const ANCHOR = TokenType._('ANCHOR');
- static const TAG = TokenType._('TAG');
- static const SCALAR = TokenType._('SCALAR');
-
- final String name;
-
- const TokenType._(this.name);
-
- @override
- String toString() => name;
+ ALIAS,
+ ANCHOR,
+ TAG,
+ SCALAR
}