W3C home > Mailing lists > Public > public-script-coord@w3.org > October to December 2012

Re: [WebIDL] Would it make sense to add annotations for "creates a new object each time" and "always returns the same object"?

From: Marcos Caceres <w3c@marcosc.com>
Date: Thu, 18 Oct 2012 15:45:01 +0100
To: Boris Zbarsky <bzbarsky@mit.edu>
Cc: "public-script-coord@w3.org" <public-script-coord@w3.org>
Message-ID: <46996E8CBF2A4871B90685A8B363B685@marcosc.com>



On Thursday, October 18, 2012 at 3:11 PM, Boris Zbarsky wrote:

> Consider a method declaration like so:
> 
> MyInterface getFoo();
> 
> It's impossible to tell from that IDL whether you get back the same 
> object every time or whether the same object is returned each time, or 
> whether it's sometimes the same and sometimes a new one. Generally you 
> have to rely on the prose to indicate that, and often the writers of the 
> prose forget to do so.
> 
> In Gecko, we have found it useful to annotate methods and attributes 
> with this sort of information (we use [Creator] for methods that always 
> return a new object and we're about to add an annotation for attributes 
> that always return the same object, but we haven't decided on a name for 
> it yet).
> 
> Would it make sense to add such annotations to WebIDL so that this sort 
> of thing doesn't have to be described in prose?
> 

I would be in favor of this. For example, the JS i18n API returns you a different object when you ask it for "resolved options". As an author, it would be nice to see at a glance that you get a distinct object. And as a tester, it could add some trivial automation to testing a method's behavior.  

-- 
Marcos Caceres
Received on Thursday, 18 October 2012 14:45:10 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 8 May 2013 19:30:07 UTC