Why didn't you just put it that way the first time? :P But seriously, my perhaps-silly thought was what about this sort of case (assume ultimate lexical order):
Module 1 (say, UserAgent.gwt.xml) <define-property name="user.agent" values="ie6,gecko,gecko1_8,safari,opera"/> Module 2 (a module that I'm using to explicitly target just Safari; let's pretend its IPhone.gwt.xml): <set-property name="user.agent" value="safari"/> Module 3 (prevent building for old Mozilla): <set-property name="user.agent" values="ie6,gecko1_8,safari,opera"/> I don't think this use case can be supported with your proposal, since the second set-property will clobber the first. Maybe this is a silly point, because we could insist the developer change the lexical order, although I could image cases where that's slightly cumbersome. This would be supportable if the third module could do a "restrict-property" that didn't clobber the explicitly set value. Again, my thinking could be quite silly here. On Wed, Sep 10, 2008 at 12:10 PM, Bruce Johnson <[EMAIL PROTECTED]> wrote: > @Scott: Basically, why exactly don't you like my reasoning? Let me be more > concise to see if you find it more sensible: > define-property: introduces a property and its initial set of allowed > values; it is illegal to re-define an existing property, which is a useful > guard against collisions > extend-property: add new values to an existing property; we statically > check that you are extending a known property > set-property: restricts the value of an existing property to one or more > particular values; we statically check that you are setting a known property > to known values > > Beauty, no? The only other thing I could imagine wanting to add (if there's > a true need) is <reset-property>. > > --~--~---------~--~----~------------~-------~--~----~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~----------~----~----~----~------~----~------~--~---