Proposal: nullable wrapper class for primitive data types (int, Number, Boolean)
Lars T Hansen
lth at acm.org
Fri Sep 21 08:08:29 PDT 2007
On 9/21/07, Anderson, Todd <todd at bluecliff.net> wrote:
> Just for clairification... These wrapper classes will be available in
> the NEXT version of es4?
There is only one version of ES4 (after that it will be ES5...)
ActionScript 3 serves as a basis for ES4 but ES4 is not quite
compatible with AS3.
The ES4 design docs on the wiki do not always explain the current
state of the language; we're not updating them any more.
(Tentatively the ES4 spec will be complete next year.)
> If so, this is good news! Exactly what I needed. The nullable Number
> class works for me in place of int.
> Hopefully Adobe will adopt these classes for Flex development.
> -----Original Message-----
> From: lars.t.hansen at gmail.com [mailto:lars.t.hansen at gmail.com] On Behalf
> Of Lars T Hansen
> Sent: Friday, September 21, 2007 3:07 PM
> To: Anderson, Todd
> Cc: es4-discuss at mozilla.org
> Subject: Re: Proposal: nullable wrapper class for primitive data types
> (int, Number, Boolean)
> Those pages are probably somewhat out of date.
> At present we have Boolean, Number, and String which are nullable
> wrapper classes for boolean, double, and string, respectively. Is
> there a particular reason you would need specific wrappers for int and
> could not make do with Number?
> If the recordset "will return a null value for an int typed column"
> then arguably the type of the column is (int,null), not int. The
> former is expressible in ECMAScript 4 either like that or as "int?".
> Will that not do?
> On 9/21/07, Anderson, Todd <todd at bluecliff.net> wrote:
> > Hello,
> > Background ES4 WIKI:
> > http://wiki.ecmascript.org/doku.php?id=proposals:nullability
> > Background Flexcoders Discussion:
> > http://tech.groups.yahoo.com/group/flexcoders/message/88001
> > Issue: When working with sql database record sets, often the recordset
> > return a null value for an int or boolean typed column. This means
> > column is in a state of "value undetermined" or "not yet set". When a
> > recordset is returned into a Adobe Flex 2 VO containing, for instance,
> > int, the value is reduced to the default value of 0. Since "not yet
> > determined" and 0 are not equivalent, then this becomes an erroneous
> > conversion and will corrupt any update calls back to the database.
> > the primitive types are not extensible, then there is no current
> > for this issue.
> > Proposal: To allow for a wrapper classes that will enable nullable
> > data types. Therefore, the type of int, Boolean, Number, etc will
> > remain the same (not nullable), however a proposed type of NullInt,
> > NullBoolean and NullNumber would behave the same as the primitive
> > except allowing them to be set to null.
> > Rationale: Allowing a change such as this allows developers who work
> > database recordsets (the vast majority) to accurately reflect the data
> > is in the database. If the data in the database is automatically
> > to a default value in a "hidden" way, then many developers will have
> > error situation on their hands and may not know why.
> > Thank You.
> > -Todd Anderson
> > _______________________________________________
> > Es4-discuss mailing list
> > Es4-discuss at mozilla.org
> > https://mail.mozilla.org/listinfo/es4-discuss
More information about the Es4-discuss