- From: Erik Arvidsson <arv@chromium.org>
- Date: Fri, 8 Mar 2013 12:55:48 -0500
- To: Dimitri Glazkov <dglazkov@chromium.org>
- Cc: Scott Miles <sjmiles@google.com>, public-webapps <public-webapps@w3.org>
If you have a tag name it is easy to get the prototype. var tmp = elementElement.ownerDocument.createElement(tagName); var prototype = Object.getPrototypeOf(tmp); On Fri, Mar 8, 2013 at 12:16 PM, Dimitri Glazkov <dglazkov@chromium.org> wrote: > On Thu, Mar 7, 2013 at 2:35 PM, Scott Miles <sjmiles@google.com> wrote: >> Currently, if I document.register something, it's my job to supply a >> complete prototype. >> >> For HTMLElementElement on the other hand, I supply a tag name to extend, and >> the prototype containing the extensions, and the system works out the >> complete prototype. >> >> However, this ability of HTMLElementElement to construct a complete >> prototype from a tag-name is not provided by any imperative API. >> >> As I see it, there are three main choices: >> >> 1. HTMLElementElement is recast as a declarative form of document.register, >> in which case it would have no 'extends' attribute, and you need to make >> your own (complete) prototype. >> >> 2. We make a new API for 'construct prototype from a tag-name to extend and >> a set of extensions'. >> >> 3. Make document.register work like HTMLElementElement does now (it takes a >> tag-name and partial prototype). > > 4. Let declarative syntax be a superset of the imperative API. > > Can you help me understand why you feel that imperative and > declarative approaches must mirror each other exactly? > > :DG< > -- erik
Received on Friday, 8 March 2013 17:56:41 UTC