[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Happy New Year
[Thread Prev] | [Thread Next]
- Subject: Re: Happy New Year
- From: Fabien Bodard <gambas.fr@xxxxxxxxx>
- Date: Sun, 4 Jan 2026 23:05:50 +0100
- To: user@xxxxxxxxxxxxxxxxxxxxxx
merci :) Le dim. 4 janv. 2026 à 19:21, Benoît Minisini < benoit.minisini@xxxxxxxxxxxxxxxx> a écrit : > Happy New Year 2026 to everyone! > > During the holidays, I have added support to "named enumerations" to > Gambas. > > What's that new feature? > > First, you have a new syntax for declaring enumerations by specifying an > "enumeration name". > > -------------------- > Public Enum <Name> Is <Constant 1> [ = <Value1> ], <Constant 2> [ = > <Value2> ] ... > -------------------- > > Two remarks: > > - You can now reuse an already declared integer constant in the > enumeration. It allows you to both have a specific documentation for > that constant, and have an enumeration using it. > > - You can use the same already declared constant in several enumerations > if you want. > > Then, you have a new syntax for declarating datatypes taking their value > inside that enumeration, using its name. > > -------------------- > Dim <Name> As Enum <EnumerationName> > > Public <Variable> As Enum <EnumerationName> > > Public Sub Method(Arg As Enum <EnumerationName>) As Enum > <OtherEnumerationName> > -------------------- > > It's very important to understand that it's a -compiler only- feature. > > The interpreter does not see the enumeration. Only integers exist for > him. You can assign any integer value to a variable declared as 'Enum > <Name>', even the values that are not a member of the '<Name>' > enumeration. Nothing is checked at runtime. > > Moreover, the compiler does not check at all that you actually use an > existing enumeration name. > > The compiler just use the named enumeration declarations to generate > metadata (in the '*.list' and '*.info' files), and this metadata is used > by the IDE for implementing automatic completion. > > So it's not a new datatype, but just some new syntax that allows the IDE > to implement better automatic completion. > > At the moment, I added public named enumeration in almost every > component, but not the deprecated ones. If you find some missing > enumerations just tell me or add it yourself! And if you have any > question, just ask. > > Enjoy it. > > -- > Benoît Minisini. > > > -- Fabien Bodard
| Re: Happy New Year | Jorge Carrión <shordi@xxxxxxxxx> |
| Happy New Year | Benoît Minisini <benoit.minisini@xxxxxxxxxxxxxxxx> |