Found some evidence here that enum was supported in Ballerina at one point, but it seems to have been removed. Is anyone aware of a recommended/supported/idiomatic way to deal with enumerated values in Ballerina?
What is the idiomatic way to create and use Enumerations in Ballerina?
204 views Asked by WillD At
1
There are 1 answers
Related Questions in BALLERINA
- Locally testing OS environmental variables in Ballerina
- In the Ballerina Language how do I hot reload code via `bal run` without a server restart?
- Querying distinct values in Ballerina Query Expressions
- How does the field access behave after cloning a constant map in Ballerina
- Can we ignore case when doing ballerina regexp matches
- Uploading a REST API response to an SFTP server in Ballerina
- Clarification on type inclusions in record in Ballerina
- The assertExactEquals is not working as expected for errors Ballerina testing
- Map the Rest Fields when Data Mapping from One Record to Another in Ballerina
- How to change TLS protocol settings in HttpClient in Ballerina
- Ballerina timing out after 1 minute
- Compilation fails with gmail connector in Ballerina
- Find intersection of 2 arrays in Ballerina
- Error messages does not contain description in native executable in Ballerina
- Error while bal native build for docker using Ballerina
Related Questions in BALLERINA-COMPOSER
- How do I solve a "cannot resolve module 'ballerinax/kafka' " error in ballerina
- Can Ballerina-Composer be used with Ballerina V 1.0?
- Ballerina docker image with MySQL Driver - how to
- What is the idiomatic way to create and use Enumerations in Ballerina?
- Ballerina Composer Try-it requests 404 but OK from external cURL or Chrome
- sequence diagrams in #ballerina
- Is it possible to pass multiple toml config files in ballerina?
- Run from the ballerina composer fails for port 5010
- Ballerina: Twitter Connector : error: wso2.twitter:TwitterError, message: bad Authentication data
- What is the difference between composer in ballerina and composer used for laravel installation?
- Can't save ballerina code create using composer
- "Error in BLang parser rest service for composer" when run the composer
- Is Ballerina ready for production?
- Ballerina echoservice example throws an error
- How to run a ballerina program from Composer?
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Yes, we had removed the enum type from the language a while ago. Now you can generically define enumerated values using constants and the union type.
Let me explain how this works according to the language specification. Consider the following type definition. You can assign possible integer values as well as boolean values (
trueorfalse) to a variable of typeIntOrBoolean.Likewise, you can define a new type definition which contains only a few values such as this. Here
0denotes a singleton type which has value0and1denotes another singleton type which has the value1. Singleton type is a type which has only one value in its value set.With this understanding, we can rewrite our
Weekdaytype as follows.When you define a compile-time constant such as
const SUN = 0, the type of the variableSUNis notint, but a singleton type with the value0.