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
 }
