[SR-Dev] script parsing: string switch support

Jan Janak jan at iptel.org
Mon Feb 23 17:12:54 CET 2009


On 20-02 14:25, Andrei Pelinescu-Onciul wrote:
> On Feb 20, 2009 at 14:03, Jan Janak <jan at iptel.org> wrote:
> > On 20-02 12:22, Andrei Pelinescu-Onciul wrote:
> > > On Feb 20, 2009 at 11:15, Daniel-Constantin Mierla <miconda at gmail.com> wrote:
> > > > Hello Andrei,
> > > > 
> > > > On 02/20/2009 12:50 AM, Andrei Pelinescu-Onciul wrote:
> > > > >[...]
> > > > >
> > > > >script parsing: string switch support
> > > > >  
> > > > that's great, thanks. From the next example, to understand the the case 
> > > > can take expression that evaluates to static strings or integers?
> > > 
> > > Yes.
> > > There are the following restriction:
> > > 
> > > - case labels must be static (no vars allowed)
> > > - in the same switch you can have only one type of case labels: strings
> > >   or integers (1)
> > > - the first case label sets the required type for all the others
> > >  (so if your first case label is a string => all the other must be
> > >  strings, if it's an integer all the other must be integers).
> > > 
> > > (1) - could be changed in some cases (e.g. string case with some int
> > > label allowed, which could be automatically converted to string), but I
> > >  think it would too confusing and I disallowed it (in general having
> > >  mixed types in a switch() are 99% an error).
> > 
> > I would suggest to convert numbers to strings in this case automatically. For
> > most people things get more confusing with the increasing amount of details
> > they have to remember about the configuration language.
> 
> This would only make sense if we use match() for strings and switch()
> for ints. Otherwise it would be too confusing.

I like the idea of using match for strings and switch for integers, somehow
using match for strings seams more logical to me, but I realize that this is
just a personal preference.

   Jan.



More information about the sr-dev mailing list