Dart – Emulating enums using Constant Constructor

Yan Cui

I help clients go faster for less using serverless technologies.

This article is brought to you by

I never fully recovered my workspace setup when I upgraded my laptop two years ago, and I still miss things today. If only I had known about Gitpod back then…

Learn more

Whilst Dart doesn’t have support for enum types but it turns out you can do a pretty good job of emulating it using Dart’s constant constructors (which allows you to create compile-time constants with your class, which in .Net you’re restricted to numbers, booleans, strings and null).

Using the technique from this SO answer you will start with a base class for your enum types:

From here, you can create other specialized enum types, such as:

 

Thank you, mr Sergy Akopkokhyants for this elegant little solution.

Whenever you’re ready, here are 3 ways I can help you:

  1. Production-Ready Serverless: Join 20+ AWS Heroes & Community Builders and 1000+ other students in levelling up your serverless game. This is your one-stop shop for quickly levelling up your serverless skills.
  2. I help clients launch product ideas, improve their development processes and upskill their teams. If you’d like to work together, then let’s get in touch.
  3. Join my community on Discord, ask questions, and join the discussion on all things AWS and Serverless.

2 thoughts on “Dart – Emulating enums using Constant Constructor”

  1. Pingback: Introduce raven_dart, a Dart client for Sentry | theburningmonk.com

  2. Pingback: Year in Review, 2014 | theburningmonk.com

Leave a Comment

Your email address will not be published. Required fields are marked *